我正在使用这个XML 到 Json Zend 模块。
问题是我可以从我连接的 web 服务接收到格式错误的 XML 字符串。当在fromXml Zend 方法中处理这个 XML 时,它会抛出一个警告。
所以我想在调用fromXml函数之前验证 XML。我如何知道 XML 是否有效?最好使用 Zend?
我尝试使用以下代码,但尚未成功:(此 XML 字符串在使用fromXml时有效)
<?php
$xml1 = 'asdf';
$xml2 = '<?xml version="1.0" encoding="iso-8859-1" ?>
<sroxml>
<version>1.0</version>
<quantity>1</quantity>
<SearchType>Objetcs List</SearchType>
<ResultType>All events</ResultType>
<object>
<number>AA299100299BB</number>
<event>
<type>BDI</type>
<status>01</status>
<date>07/01/2013</date>
<hour>12:12</hour>
<description>Received</description>
<receiver>MARY WILLIAN </receiver>
<document>AA. 111639676 </document>
<comment> </comment>
<local>Some local</local>
<code>11151970</code>
<city>Some City</city>
<uf>AB</uf>
<sto>11102272</sto>
</event>
</object>
</sroxml>';
$validator = new DOMDocument();
$validator->loadXML($xml2, LIBXML_DTDLOAD|LIBXML_DTDVALID|LIBXML_ERR_WARNING |LIBXML_DTDATTR);
echo "<br>testing<pre>"; var_dump($validator->validate()); echo "</pre><br>";