【问题标题】:How to parse xml output如何解析xml输出
【发布时间】:2021-03-19 05:48:08
【问题描述】:

我想获取 xml 输出的内容文本。我如何在php中解析这个?请看下面的代码。

<xml>
  <ToUserName><![CDATA[toUser]]></ToUserName>
  <FromUserName><![CDATA[fromUser]]></FromUserName>
  <CreateTime>1348831860</CreateTime>
  <MsgType><![CDATA[text]]></MsgType>
  <Content><![CDATA[this is a test]]></Content>
  <MsgId>1234567890123456</MsgId>
</xml>

【问题讨论】:

标签: php xml laravel


【解决方案1】:

试试这个:

$x = '<xml>
         <ToUserName><![CDATA[toUser]]></ToUserName>
         <FromUserName><![CDATA[fromUser]]></FromUserName>
         <CreateTime>1348831860</CreateTime>
         <MsgType><![CDATA[text]]></MsgType>
         <Content><![CDATA[this is a test]]></Content>
         <MsgId>1234567890123456</MsgId>
    </xml>';

$xml = simplexml_load_string($x) or die("Error: Cannot create object");

print_r($xml);

【讨论】:

  • 谢谢。我尝试使用 (array)$xml 将文件转换为数组但是当访问 ToUserName (array)$xml['ToUserName'] 我得到 []。我错过了什么吗?
  • 你的xml文件格式不正确,这就是为什么它不能被php正确渲染的原因。在这里查看rextester.com/MTN54517
  • 这是他们服务器抛出的微信格式。
猜你喜欢
  • 1970-01-01
  • 2011-12-16
  • 1970-01-01
  • 1970-01-01
  • 2012-11-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多