【问题标题】:how to convert xml result into array如何将xml结果转换为数组
【发布时间】:2014-12-13 09:11:53
【问题描述】:
<entry>
    <string>actiontypedesc</string>
    <string>Registration of google1231.com for 1 year</string>
</entry>
<entry>
    <string>unutilisedsellingamount</string>
    <string>-1531.770</string>
</entry>
<entry>
    <string>sellingamount</string>
    <string>-1531.770</string>
</entry>
<entry>
    <string>entityid</string>
    <string>57928339</string>
</entry>
<entry>
    <string>actionstatus</string>
    <string>Success</string>
</entry>`

这是API调用后的输出我如何将其转换为数组?

【问题讨论】:

  • 到目前为止,您尝试了什么?还是我们应该只做你的全部工作? (我们不会)
  • $xml = simplexml_load_string($store_array); $json = json_encode($xml); $array = json_decode($json,true); var_dump($array);
  • 然后编辑您的问题并展示您尝试过的内容,以便我们看到您已经尝试过!
  • 我会推荐你​​阅读它:JSON
  • 什么数组? XML 数组? JSON数组? JavaScript 对象数组? .NET 对象数组。

标签: php xml json codeigniter


【解决方案1】:

可以尝试使用simplexml_load_string()。用父标签将整个 xml 括起来。这里我包括&lt;myxml&gt;...&lt;/myxml&gt;。示例:

$myXMLData =
"<?xml version='1.0' encoding='UTF-8'?>
<myxml>
<entry>
    <string>actiontypedesc</string>
    <string>Registration of google1231.com for 1 year</string>
</entry>
<entry>
    <string>unutilisedsellingamount</string>
    <string>-1531.770</string>
</entry>
<entry>
    <string>sellingamount</string>
    <string>-1531.770</string>
</entry>
<entry>
    <string>entityid</string>
    <string>57928339</string>
</entry>
<entry>
    <string>actionstatus</string>
    <string>Success</string>
</entry>
</myxml>";

$xml = json_decode(json_encode(simplexml_load_string($myXMLData)), true);
// json_encode() & json_decode() is to convert object to array
print '<pre>';
print_r($xml);
print '</pre>';

【讨论】:

    猜你喜欢
    • 2013-05-27
    • 1970-01-01
    • 1970-01-01
    • 2019-08-26
    • 2015-01-07
    • 2023-03-05
    • 2012-12-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多