PHP-SimpleXML不返回对象
当我分析一个属于对象数组的字符串时,我很难让SimpleXML返回该对象。
$a = '<?xml version="1.0" encoding="ISO-8859-1"?><BroadsoftDocument protocol="OCI" xmlns="C" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><sessionId xmlns="">1145869290</sessionId><command echo="" xsi:type="UserCallForwardingAlwaysGetResponse" xmlns=""><isActive>false</isActive><forwardToPhoneNumber>43</forwardToPhoneNumber><isRingSplashActive>false</isRingSplashActive></command></BroadsoftDocument>';
$resultA = simplexml_load_string($a);
var_dump($resultA);
$b = $this->_request->_response->_body; // This is the same content as $a and is a string.
$resultB = simplexml_load_string($b);
var_dump($resultB);
$resultA
的输出是一个带有警告的对象:
警告:implexml_Load_string():命名空间警告:xmlns:第103行/var/www/html/Broadworks.php中的URI C不是绝对的
$resultB
的输出是空对象?
$a
和$b
是相同的字符串。
解决方案
从您的xml字符串中删除xmlns="C"
相关文章