PHP DOM验证xml文档是否符合DTD验证
2018-01-21 11:59
585 查看
validate.php:
note.xml:
note.dtd:
<?php header("Content-Type:text/html;charset=utf-8"); $dom = new DOMDocument('1.0','utf-8'); //$dom->validateOnParse = true; //(第一种方法通过属性验证)强制加载外部DTD(是否通过DTD文件验证xml文档,默认为false) @$dom->load('note.xml'); //这个@表示会强制加载外部DTD文件。 if (@$dom->validate()) { //(第二种方法通过方法验证)这个@表示屏蔽验证不通过时的提示信息。 echo "yes"; } else { echo "no"; } // $body = $dom->getElementsByTagName('body')->item(0); // echo $body->nodeValue;
note.xml:
<?xml version = '1.0' encoding = 'utf-8'?> <!DOCTYPE note SYSTEM 'note.dtd'> <note> <to>明月</to> <from>清风</from> <heading>思念</heading> <body> 月到<strong>中秋</strong>分外明,人到中秋倍无助 %company; <!--参数实体只能用于DTD内部--> ©right; <!--一般实体可以用于xml--> </body> <br/> </note>
note.dtd:
<!ELEMENT note (to,from,heading,body,br,any)> <!ELEMENT to (#PCDATA)> <!ELEMENT from (#PCDATA)> <!ELEMENT heading (#PCDATA)> <!ELEMENT body (#PCDATA|strong)*> <!ELEMENT strong (#PCDATA)> <!ELEMENT br EMPTY> <!ELEMENT any ANY> <!ENTITY % company '商务印书馆'> <!--定义参数实体,参数实体只能在DTD中使用--> <!ENTITY copyright "2015~2022 %company; 版权所有"> <!--定义一般实体,一般实体可以在xml中使用-->
相关文章推荐
- [转]Java 语言的 XML 验证 API---检查文档是否符合模式
- Java 语言的 XML 验证 API-检查文档是否符合模式
- 使用JAVAAPI验证XML是否符合DTD的规定
- PHP DOM操作XML文档,查询遍历结点元素
- C#代码通过dtd验证xml文件格式是否正确
- 如何用 Visual C#.net 中的 DTD、 XDR,或 XSD 验证 XML 文档
- PHP通过DOM创建XML文档
- php使用 DOM 创建xml文档
- 使用DTD验证XML文档
- PHP使用DOM和simplexml读取xml文档的方法示例
- PHP DOM操作xml文档,修改元素
- xml基于DTD的XML文档有效性验证
- 创建一个book.xml文档,PHP通过DOM方式解析获得每本书的作者和书名
- php DOMElement 操作xml 文档的示例代码
- php xml dtd 验证
- 解析php DOMElement 操作xml 文档的实现代码
- PHP DOM操作xml文档,删除一个,遍历删除所有(注意有陷阱)
- 验证 XML 是否符合 Schema 推荐
- php DOM解析xml文档以及对节点增删改查实现