读取xml文件并在php中生成json_encode格式

时间:2013-01-23 10:30:19

标签: php xml json

  

可能重复:
  XML to JSON or array? PHP

我有一个类似以下的xml文件。

<?xml version="1.0" encoding="UTF-8"?>
<response uri="/crm/private/xml/Leads/getCVRecords">
<result>
<Leads>
<row no="1">
<FL val="LEADID">580005000000189001</FL>
<FL val="SMOWNERID">580005000000052003</FL>
<FL val="Lead Owner"><![CDATA[Adithya Buddhavarapu]]></FL>
<FL val="First Name"><![CDATA[Srimanta]]></FL>
<FL val="Last Name"><![CDATA[Chakraborty]]></FL>
<FL val="Email"><![CDATA[srimanta12@gmail.com]]></FL>
<FL val="Lead Source"><![CDATA[iBanquet FB]]></FL>
<FL val="No of Employees"><![CDATA[0]]></FL>
<FL val="Annual Revenue"><![CDATA[0]]></FL>
<FL val="SMCREATORID">580005000000052003</FL>
<FL val="Created By"><![CDATA[Adithya Buddhavarapu]]></FL>
<FL val="MODIFIEDBY">580005000000052003</FL>
<FL val="Modified By"><![CDATA[Adithya Buddhavarapu]]></FL>
<FL val="Created Time"><![CDATA[2013-01-22 12:24:04]]></FL>
<FL val="Modified Time"><![CDATA[2013-01-22 12:24:04]]></FL>
<FL val="Email Opt Out"><![CDATA[false]]></FL>
<FL val="Last Activity Time"><![CDATA[2013-01-22 12:24:04]]></FL>
</row>
<row no="2">
<FL val="LEADID">580005000000188001</FL>
<FL val="SMOWNERID">580005000000052003</FL>
<FL val="Lead Owner"><![CDATA[Adithya Buddhavarapu]]></FL>
<FL val="First Name"><![CDATA[Adithya]]></FL>
<FL val="Last Name"><![CDATA[Buddhavarapu]]></FL>
<FL val="Email"><![CDATA[adithya.buddhavarapu@oracle.com]]></FL>
<FL val="Lead Source"><![CDATA[iBanquet FB]]></FL>
<FL val="No of Employees"><![CDATA[0]]></FL>
<FL val="Annual Revenue"><![CDATA[0]]></FL>
<FL val="SMCREATORID">580005000000052003</FL>
<FL val="Created By"><![CDATA[Adithya Buddhavarapu]]></FL>
<FL val="MODIFIEDBY">580005000000052003</FL>
<FL val="Modified By"><![CDATA[Adithya Buddhavarapu]]></FL>
<FL val="Created Time"><![CDATA[2013-01-21 19:14:44]]></FL>
<FL val="Modified Time"><![CDATA[2013-01-21 19:14:44]]></FL>
<FL val="Email Opt Out"><![CDATA[false]]></FL>
<FL val="Last Activity Time"><![CDATA[2013-01-21 19:14:44]]></FL>
</row>
<row no="3">
<FL val="LEADID">580005000000166001</FL>
<FL val="SMOWNERID">580005000000052003</FL>
<FL val="Lead Owner"><![CDATA[Adithya Buddhavarapu]]></FL>
<FL val="First Name"><![CDATA[Sri]]></FL>
<FL val="Last Name"><![CDATA[Nair]]></FL>
<FL val="Email"><![CDATA[sreejith_eroots@hotmail.com]]></FL>
<FL val="Lead Source"><![CDATA[iBanquet FB]]></FL>
<FL val="No of Employees"><![CDATA[0]]></FL>
<FL val="Annual Revenue"><![CDATA[0]]></FL>
<FL val="SMCREATORID">580005000000052003</FL>
<FL val="Created By"><![CDATA[Adithya Buddhavarapu]]></FL>
<FL val="MODIFIEDBY">580005000000052003</FL>
<FL val="Modified By"><![CDATA[Adithya Buddhavarapu]]></FL>
<FL val="Created Time"><![CDATA[2012-12-28 16:14:29]]></FL>
<FL val="Modified Time"><![CDATA[2012-12-28 16:14:29]]></FL>
<FL val="Email Opt Out"><![CDATA[false]]></FL>
<FL val="Last Activity Time"><![CDATA[2012-12-28 16:14:29]]></FL>
</row>
</Leads>
</result>
</response>

现在我必须获取所有值,如LEADID,SMOWNERID,Lead Owner,....,Last Activity Time并将它们存储在json数组中。我怎样才能做到这一点?请帮帮我。

感谢。

1 个答案:

答案 0 :(得分:0)

好吧,你必须使用适当的函数解析xml文件并将其编码为json对象。那么使用函数xml_parse_into_struct(xml解码还有很多其他函数)和json_encode呢。

也许你应该看看关于php和xml resp的一般解释。 json在http://php.net/manual/en/refs.xml.phphttp://php.net/manual/en/book.json.php