php: преобразование всех HTML-тегов к нижнему регистру
Понадобилось для поддержания валидности XHTML, когда при написании материалов для сайта теги пишут в верхнем регистре.
Преобразовываем все HTML-теги к нижнему регистру:
<?php $src = "<H1>Заголовок</H1><P>ТеКст С БукВамИ</P>"; $src = preg_replace("/(<\/?)(\w+)([^>]*>)/e", "'\\1'.strtolower('\\2').'\\3'", $src); echo $src; ?>
если использоваться будет многократно то в функцию:
<?php function strtolowerTags($str) { $str = preg_replace("/(<\/?)(\w+)([^>]*>)/e", "'\\1'.strtolower('\\2').'\\3'", $str); return $str; } $test = "<H1>Заголовок</H1><P>ТеКст С БукВамИ</P>"; echo strtolowerTags($test); ?>
В результате получаем
<h1>Заголовок</h1><p>ТеКст С БукВамИ</p>
Про preg_replace: http://www.php.ru/manual/function.preg-replace.html