Проблема: товары на сайт выгружаются из 1С: Предприятие.
В описаниях товара часто встречается попытка верстки элементов с помощью тега <div>. И это не великая проблема, но очень часто встречаются товары в которых не хватает либо закрывающих тегов:</div> Либо лишние окрывающие теги: <div>.
После вывода описания, в детальной карточке товара, ломается вся верстка сайта - из за этой "ошибочной верстки".
Задача: вырезать все теги <div> </div> из описания, при этом функция strip_tags() не подходит, остальные теги нужно оставить (абзацы, заголовки итд)
Вот решение:
Код
// TODO временно, пока не поправят в 1С
$string = $arResult['~DETAIL_TEXT'];
$pattern = '/<div\b[^>]*>(.*?)<\/div>/i';
$replacement = '';
$processedString = preg_replace($pattern, $replacement, $string);
echo $processedString;