1

可能重复:
PHP 将 XML 转换为 JSON

这是我的输出 XML 示例的样子:

<item>
 <Barcode>0602527522593</Barcode>
 <albumid>1818</albumid>
 <Title>Gold</Title>
 <Country>Sweden</Country>
 <Format>CD</Format>
 <Length></Length>
 <Number_of_Discs></Number_of_Discs>
 <Type>album</Type>
 <Description></Description>
 <Band_or_Artist>Adams, Ryan</Band_or_Artist>
</item>

是否有易于使用的内置 PHP 函数或插件快速将其转换为 JSON 并输出?如果它不是内置的,我应该使用哪个扩展?

4

4 回答 4

1

作为在客户端执行此操作的替代方法是来自 fyneworks的XML 到 JSON 插件。

于 2012-05-09T22:08:57.860 回答
1

您可以使用 SimpleXML (http://php.net/manual/en/book.simplexml.php) 读取 XML 输入,然后使用 json_encode (http://php.net/manual/en/book.json.php)创建输出。

您可能只想遍历节点列表并使用标签名称作为键将所有内容放入数组中,这应该相当简单。

于 2012-05-09T22:10:58.967 回答
0

有很多。这是来自 IBM 的一个:http: //www.ibm.com/developerworks/xml/library/x-xml2jsonphp/

于 2012-05-09T22:09:54.003 回答
0

像这样的东西?

<?php

$xmlstr = "<item>
 <Barcode>0602527522593</Barcode>
 <albumid>1818</albumid>
 <Title>Gold</Title>
 <Country>Sweden</Country>
 <Format>CD</Format>
 <Length></Length>
 <Number_of_Discs></Number_of_Discs>
 <Type>album</Type>
 <Description></Description>
 <Band_or_Artist>Adams, Ryan</Band_or_Artist>
</item>";

$movies = new SimpleXMLElement($xmlstr);
echo $output = json_encode($movies);
?>
于 2012-05-09T22:16:43.410 回答