X / Html Validator в PHP

Первое: я знаю, что есть интерфейс для валидатора W3C: http://pear.php.net/package/Services_W3C_HTMLValidator/ Но я не знаю, смогу ли я установить его на дешевом сервере хостинга. Я так не думаю.

Мне нужен валидатор для моих инструментов seo в моей системе управления контентом, поэтому он должен быть довольно переносимым.

Я хотел бы использовать W3C, но только если он будет переносимым. Я также могу использовать Curl для этого, но это не будет изящное решение.

Самый лучший, который я нашел до сих пор: http://phosphorusandlime.blogspot.com/2007/09/php-html-validator-class.html

Есть ли какой-либо валидатор, сопоставимый с W3C, но переносимый (только PHP, который не зависит от пользовательских пакетов)?

Если вы хотите проверить (X) HTML-документы, вы можете использовать собственное расширение DOM PHP:

  • DOMDocument::validateDOMDocument::validate документ на основе DTD

Пример из руководства:

 $dom = new DOMDocument; $dom->load('book.xml'); // see docs for load, loadXml, loadHtml and loadHtmlFile if ($dom->validate()) { echo "This document is valid!\n"; } 

Если вам нужны отдельные ошибки, libxml_get_errors() их с помощью libxml_get_errors()

Я задал аналогичный вопрос, и вы можете проверить некоторые из ответов там.

В общем, я бы рекомендовал либо запустить HTML-код в порядке на хосте, либо написать короткий скрипт для проверки через W3C удаленно. Лично мне не нравится опрятный вариант, потому что он переформатирует ваш код, и я ненавижу, как он помещает tags

в каждую строку.

Вот ссылка на порядок, и вот ссылка на различные инструменты проверки W3C .

Следует иметь в виду, что проверка HTML не работает с кодом на стороне сервера; он работает только после оценки вашего PHP. Это означает, что вам нужно будет запустить ваш код через интерпретатор PHP хоста, а затем «подключить» его либо к утилите tidy, либо к службе удаленной проверки. Эта команда будет выглядеть примерно так:

$ php myscript.php | tidy #options go here

Лично я в конечном итоге решил отказаться от головной боли и просто отобразить страницу, скопировать источник и проверить с помощью прямого ввода в утилите проверки W3C. Есть так много раз, что вам нужно все равно проверять страницу, и автоматизировать ее было больше проблем, чем того стоит.

Удачи.