在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
最近在接入渠道的时候遇到接口返回是xml数据.现在接口数据返回json数据格式比较常见. 如何获取xml里面真正数据? 对象结果集合单个值的强制转换处理.(直接代码说明) demo示例: 创建xml文件:test.xml,存放在和读取的php文件在相同级别目录下面. xml文件: 1 <?xml version="1.0" encoding="UTF-8"?> 2 <node> 3 <id>10001</id> 4 <userName>admin</userName> 5 <node> 6 <token>secretKey</token> 7 </node> 8 </node>
php文件: 1 <?php 2 $file = 'test.xml'; 3 //将XML中的数据,读取到数组对象中 4 $xml_object=simplexml_load_file($file); 5 6 //全部对象结果集合 7 //object(SimpleXMLElement)#1 (3) { ["id"]=> string(5) "10001" ["userName"]=> string(5) "admin" ["node"]=> object(SimpleXMLElement)#2 (1) { ["token"]=> string(9) "secretKey" } } 8 var_dump($xml_object); 9 echo '<pre>'; 10 11 //$xml_object->id对象值 12 //object(SimpleXMLElement)#2 (1) {[0]=>string(5) "10001"} 13 var_dump($xml_object->id); 14 echo '<pre>'; 15 16 //$xml_object->id对象值 17 //10001 (echo强制转换结果后获取值,注意:实际取值还需要在处理!) 18 echo($xml_object->id); 19 echo '<pre>'; 20 21 //强制转换字符串处理,对象单个值处理
结果打印:
通过上面的解释,我们也可以使用另一种方法获取xml节点值的数据问题: json_encode() 对象转成json, json_decode() json再转成数组 . 获取数组直接处理数据就简单. demo实例: 1 <?php 2 $file = 'test.xml'; 3 //将XML中的数据,读取到数组对象中 4 $xml_object=simplexml_load_file($file); 5 6 $xml_json=json_encode($xml_object);//对象转成json 7 $xml_arr=json_decode($xml_json,true);//json再转成数组 8 9 echo "<pre>"; 10 var_dump($xml_arr);
结果打印:
|
2022-07-18
2022-08-17
2022-11-06
2022-08-17
2022-07-29
请发表评论