У меня есть xml-файл, и я хотел бы проверить его с помощью DTD.PHP - проверка XML-файла в отношении DTD-файла
Для этого я включил ссылку DTD в XML:
<!DOCTYPE article SYSTEM "http://dtd.nlm.nih.gov/1.1/journalpublishing.dtd">
А потом сделал:
$dom = new DOMDocument();
$dom->loadHTML($xml);
if ($dom->validate()) {
echo "This document is valid!\n";exit;
}
else {
var_dump("Not OK");exit;
}
Проблема заключается в том, что я получаю это предупреждение:
Warning: DOMDocument::validate(http://www.w3.org/TR/REC-html40/loose.dtd): failed to open stream: HTTP request failed! HTTP/1.0 500 Server Error
Любая идея? Спасибо.
изменить 'loadHTML' на' load', если вы не хотите вызывать модуль парсера HTML-кода для libxml – Gordon
@Gordon, это очень трюк, спасибо большое. –
Не могли бы вы ответить на вопрос и, возможно, предоставить некоторые детали, почему загрузка работает, а не loadXML? –