X / Html Validator в PHP - PullRequest
       23

X / Html Validator в PHP

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

Первое: я знаю, что есть интерфейс для валидатора 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, который не зависит от пользовательских пакетов)?

Ответы [ 2 ]

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

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

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

$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()

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

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

В целом, я бы порекомендовал либо запустить HTML через tidy на хосте, либо написать короткий скрипт для удаленной проверки через W3C. Лично мне не нравится опция tidy, потому что она переформатирует ваш код, и я ненавижу то, как она помещает теги <p> в каждую строку.

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

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

$ php myscript.php | привести в порядок # опции сюда

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

Удачи.

...