Костыли DOMDocument loadHTML и атрибут charset html5
+1
Костыли DOMDocument loadHTML и атрибут charset html5

Проблема с атрибутом в php с LIBXML_VERSION до 20800 при обработке данных loadHTML теряет кодировку файла.
Написал маленький костыль на основе Glen Scott

Фикс такой:

# https://github.com/glenscott/dom-document-charset                

if ( LIBXML_VERSION < 20800 ) $data = preg_replace( "#<meta charset=[\"'](.+?)['\"]#i", "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=\\1\"", $data );

$doc = new DOMDocument();
                                  
$doc->loadHTML($data);


Прочие извращения:
PHP: DOMDocument::loadHTML - Manual
php - domdocument character set issue - Stack Overflow
utf 8 - PHP DomDocument failing to handle utf-8 characters (?) - Stack Overflow
loadHTML и кодировка | PHPClub - клуб разработчиков PHP
DomDocument – кодировка в HTML-документах » fxposter's wave


Внимание! Данная статья была написана более полугода назад, актуальность материала и состояние жизни ссылок не гарантируется! Воспользуйтесь дополнительными параметрами для поиска необходимого вам контента! Приносим свои извинения...

Внимание! У статьи пока нет комментариев, оставьте первым свой комментарий?
Оставить комментарий / Добавление ссылок в комментариях разрешено