PHP: DOMDocument loadHTML возвращает ошибку при использовании тегов HTML5 - PullRequest
10 голосов
/ 17 февраля 2011

Например <section>. Что я могу с этим поделать?

Ответы [ 3 ]

2 голосов
/ 17 февраля 2011

Я столкнулся с этой проблемой с функциями PHP DOMDoc и XSL.Вы в основном должны загрузить документ в формате XML.Это единственный способ получить тег <video> для работы.

Обновление: вы также можете попробовать добавить элементы и сущности в <!DOCTYPE html5 >, пока $doc->resolveExternals = true.

1 голос
/ 27 сентября 2013

попытайтесь игнорировать ошибку:

В моих случаях у меня есть несколько «виджетов» в нескольких файлах, которые действуют как шаблоны.Например: template_header.html template_footer.html

<?php
//Load header
$dom = new DOMDocument();
@$dom->loadHTMLFile('template_header.html');
$xpath = new DOMXpath($dom);
$nodelist = $xpath->query('div[class="template-widget"]');
foreach($nodelist as $node){
    echo $dom->saveHTML($node);
}   
?>

Обратите внимание, что $ dom-> loadhtmlfile имеет и '@', чтобы игнорировать ошибку.

1 голос
/ 26 февраля 2011

Я не знаю, пробовали ли вы библиотеку, на которую в конечном итоге указывали в этом ответе:

DOM-парсер, который поддерживает HTML5-стиль

...