<?xml version="1.0" encoding="gb2312" ?>
<property>
<a><![CDATA[200]]></a>
<b><![CDATA[test]]></b>
<c>300</c>
</property>有以上一组数据(这个是由另一个代码生成后的结果,由于拿不到代码,只有结果),请问如果把这组XML格式的数据分解出来?注意:不是去读文件的那种操作方式。就是我在PHP通过调用一段代码,得到这个结果,存在变量“$temp1”,现在要实现的就是把$temp1中的这组数据分解出来,从而得到a=200,b=test,c=300的。
<property>
<a><![CDATA[200]]></a>
<b><![CDATA[test]]></b>
<c>300</c>
</property>有以上一组数据(这个是由另一个代码生成后的结果,由于拿不到代码,只有结果),请问如果把这组XML格式的数据分解出来?注意:不是去读文件的那种操作方式。就是我在PHP通过调用一段代码,得到这个结果,存在变量“$temp1”,现在要实现的就是把$temp1中的这组数据分解出来,从而得到a=200,b=test,c=300的。
<?xml version="1.0" encoding="gb2312" ?>
<property>
<a> <![CDATA[200]]> </a>
<b> <![CDATA[test]]> </b>
<c>300 </c>
</property>
TEST;$so = simplexml_load_string($str,'SimpleXMLElement', LIBXML_NOCDATA);
foreach($so as $key=>$value)
{
$$key = $value;
}
echo $a . "<br/>" . $b . "<br/>" . $c;
$so = simplexml_load_string($temp1,'SimpleXMLElement', LIBXML_NOCDATA);
foreach($so as $key=>$value)
{
$$key = $value;
}
echo $a . "<br/>" . $b . "<br/>" . $c;
但运行后报错,提示如下:Warning: simplexml_load_string() [function.simplexml-load-string]: Entity: line 2: parser error : XML declaration allowed only at the start of the document in D:\wwwroot\PHP\testnet.php on line 17
最好trim一下.