PHP 将XML转成数组(微信回调接收方法)

网友投稿 756 2022-11-15

PHP 将XML转成数组(微信回调接收方法)

PHP 将XML转成数组(微信回调接收方法)

有两种取得XML数据的方法:

一、file_get_contents("php://input")

$data = array();$xml = simplexml_load_string(file_get_contents("php://input"), 'SimpleXMLElement', LIBXML_NOCDATA);foreach ($xml as $k => $v) { $data[(string) $k] = (string) $v;}

例子:

$xml= "1";//XML文件$objectxml = simplexml_load_string($xml, 'SimpleXMLElement', LIBXML_NOCDATA);//将文件转换成 对象$xmljson= json_encode($objectxml);//将对象转换个JSON$xmlarray=json_decode($xmljson,true);//将json转换成数组dump($xmlarray);

$xml = file_get_contents("php://input"); $objectxml = simplexml_load_string($xml, 'SimpleXMLElement', LIBXML_NOCDATA);//将文件转换成 对象 $xmljson= json_encode($objectxml);//将对象转换个JSON $xmlarray=json_decode($xmljson,true);//将json转换成数组

二、$GLOBALS['HTTP_RAW_POST_DATA']

//将服务器返回的XML数据转化为数组 $data = array(); $xml = simplexml_load_string($GLOBALS['HTTP_RAW_POST_DATA'], 'SimpleXMLElement', LIBXML_NOCDATA); foreach ($xml as $k => $v) { $data[(string) $k] = (string) $v; }

三、

//禁止引用外部xml实体 libxml_disable_entity_loader(true); $result= json_decode(json_encode(simplexml_load_string($response, 'SimpleXMLElement', LIBXML_NOCDATA)), true); dump($result['sign']);die;

重点是这个:

调用:

$data_sign = $data['sign'];

引用:​​https://jianshu.com/p/5e11cf15a3f5​​

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:字节字符流转化
下一篇:Composer TP5/6 升级(忽略升级)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~