在PHP中,可以使用SimpleXML和DOM扩展库来验证XML文档是否符合指定的XML Schema。下面分别介绍这两个库的用法。
SimpleXML方式使用SimpleXML进行XML Schema验证的步骤如下:
- 加载XML Schema文件和XML文件到SimpleXML对象中。
- 使用libxml_use_internal_errors()函数打开错误处理,以捕获XML解析和验证过程中的错误信息。
- 调用simplexml_load_string()或simplexml_load_file()函数将XML文件加载到SimpleXML对象中。
- 使用simplexml_import_dom()函数将DOM对象转换为SimpleXML对象。
- 调用$sxe->schemaValidate()方法对XML文档进行XML Schema验证。
示例代码如下:
$xml = simplexml_load_fi...
网上看到那些都是垃圾,数组多几层就不行了,还有就是用字符串组合成xml结构,这样很容易出错。
本人原创的这段是用PHP的DOMDocument生成的xml结构,兼容性很好,而且解析时不会出错。class jsonToXml {
public static function convert($data, DOMDocument $dom = null, DOMElement $xml = null) {
if(!$dom) {
$dom = new DOMDocument('1.0', 'UTF-8');
$dom->formatOutput = true;
}
if(!$xml) {
$xml = $dom->createElement('xml');
$xml->setAttribute('root', 'http...