PHP中的X / Html Validator

问题描述 投票:9回答:2

第一件事:我知道有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不依赖于自定义包)?

php html validation xhtml w3c-validation
2个回答
9
投票

如果要验证(X)HTML文档,可以使用PHP的本机DOM扩展:

手册示例:

$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
投票

我问了一个类似的question,你可能会看看那里的一些答案。

总之,我建议通过整理主机运行HTML或编写一个简短的脚本来远程验证W3C。就个人而言,我不喜欢整洁的选项,因为它重新格式化你的代码,我讨厌它如何在每一行上放置<p>标签。

这里是tidy的链接,这里是various W3C validation tools的链接。

要记住的一件事是HTML验证不适用于服务器端代码;它仅在评估PHP之后才有效。这意味着您需要通过主机的PHP解释器运行代码,然后将其“管道”到整洁的实用程序或远程验证服务。该命令看起来像:

$ php myscript.php |整洁#options到这里

就个人而言,我最终选择放弃头痛并简单地渲染页面,复制源并通过W3C验证实用程序上的直接输入进行验证。无论如何,你需要验证页面的次数很多,自动化它似乎比它的价值更麻烦。

祝好运。

© www.soinside.com 2019 - 2024. All rights reserved.