force_balance_tags() — закрывает все незакрытые HTML-теги в указанной строке, расставляет их в правильном порядке

Функция возвращает строку, в которой:

  • все HTML-теги закрыты,
  • преобразованы одиночные теги, например <br> и <hr> в <br /> и <hr /> соответственно,
  • все теги расположены в правильном порядке;
force_balance_tags( $text )

$text
(строка) (обязательное) строка с HTML-кодом, который требуется откорректировать.

Примеры использования

В качестве примера возьмем вот такой «недосписок» и пропустим его через функцию:

$html = '<ul class="list">
<li>обычный
<li>маркированный
<li>список
<li>и тег<br>переноса на новую строку</li>';
 
echo force_balance_tags($html);

Заметьте, в коде не хватает нескольких закрывающих тегов </li> и одного закрывающего </ul>, а вот скриншот того, что получаем в итоге:

результат действия функции force_balance_tags

Как видите, все теги теперь закрыты.

А теперь пример с нарушенным порядком HTML-тегов:

$html = '<p><em><a href="#wordpress">WordPress</p></a></em>';
 
echo force_balance_tags($html);

В итоге:

исправленный порядок тегов

Миша

Впервые познакомился с WordPress в 2009 году. Организатор и спикер на конференциях WordCamp. Преподаватель в школе Нетология.

Пишите, если нужна помощь с сайтом или разработка с нуля.

Чтобы оставить комментарий, пожалуйста, зарегистрируйтесь или войдите.

Миша Рудрастых и WordPress

Полезности из мира WordPress и жизни студии.

Мой телеграм-канал