php 使用simplexml_load_string转换xml数据格式失败

本文介绍如何使用php函数解析xml数据为数组。

php 复制代码
<?php

$a = '<xml><ToUserName><![CDATA[ww8b77afac71336111]]></ToUserName><FromUserName><![CDATA[sys]]></FromUserName><CreateTime>1736328669</CreateTime><MsgType><![CDATA[event]]></MsgType><Event><![CDATA[change_external_contact]]></Event><ChangeType><![CDATA[del_external_contact]]></ChangeType><UserID><![CDATA[Xu]]></UserID><ExternalUserID><![CDATA[woh0dIDAAA4kq6S_aXw1UkX7_qXb22ng]]></ExternalUserID></xml>';

$xmlObject = simplexml_load_string($a,'SimpleXMLElement', LIBXML_NOBLANKS);
$json = json_encode($xmlObject);
var_dump($json);
$array = json_decode($json, true);
print_r($array);

打印后发现xml内容中带有CDATA的好像不能正常解析

string(133) "{"ToUserName":{},"FromUserName":{},"CreateTime":"1736328669","MsgType":{},"Event":{},"ChangeType":{},"UserID":{},"ExternalUserID":{}}"

Array

(

ToUserName\] =\> Array ( ) \[FromUserName\] =\> Array ( ) \[CreateTime\] =\> 1736328669 \[MsgType\] =\> Array ( ) \[Event\] =\> Array ( ) \[ChangeType\] =\> Array ( ) \[UserID\] =\> Array ( ) \[ExternalUserID\] =\> Array ( ) )

看起来不错,我来替换下尝试一下

string(239) "{"ToUserName":"ww8b77afac713361bd","FromUserName":"sys","CreateTime":"1736328669","MsgType":"event","Event":"change_external_contact","ChangeType":"del_external_contact","UserID":"XuBin","ExternalUserID":"woh0dIDAAA4kq6S_aXw1UkX7_qXb22ng"}"

Array

(

ToUserName\] =\> ww8b77afac71336111 \[FromUserName\] =\> sys \[CreateTime\] =\> 1736328669 \[MsgType\] =\> event \[Event\] =\> change_external_contact \[ChangeType\] =\> del_external_contact \[UserID\] =\> Xu \[ExternalUserID\] =\> woh0dIDAAA4kq6S_aXw1UkX7_qXb22ng )

相关推荐
—Qeyser2 小时前
Flutter网络请求Dio封装实战
网络·flutter·php·xcode·android-studio
半桔3 小时前
【IO多路转接】IO 多路复用之 select:从接口解析到服务器实战
linux·服务器·c++·github·php
CRMEB系统商城1 天前
【新版发布】标准版PHP v5.6.4正式版,优化部分用户体验
java·大数据·小程序·php·ux
java_logo2 天前
Docker 部署 WordPress 全流程
运维·docker·容器·word·php·1024程序员节
小小小糖果人2 天前
Linux云计算基础篇(24)-PXE批量安装和Kickstart工具
linux·运维·php
非凡的世界2 天前
PHP 异步IO扩展包 AsyncIO v2.0.0 发布
php·异步·1024程序员节
大孜然3 天前
Macao资料生成程序,全新的UI 三端自适应PHP空间
php
挨踢攻城3 天前
网络安全 | 如何防御勒索软件?
安全·web安全·网络安全·php·厦门微思网络·防疫勒索软件
低音钢琴3 天前
【从零开始构建性能测试体系-08】如何诊断性能瓶颈:从服务器到数据库的全方位分析
服务器·数据库·php
laoma-cloud3 天前
网络基础综合实验
网络·php