PHP在PHP中处理/使用哪个更快;XML或JSON,以及文件获取内容或卷曲?

PHP在PHP中处理/使用哪个更快;XML或JSON,以及文件获取内容或卷曲?,php,json,xml,Php,Json,Xml,是否有任何理由让我选择JSON而不是XML,或者如果两者都可用,则反之亦然?在处理数据馈送时优化性能的提示也值得赞赏 说到PHP,我选择XML而不是JSON的一个原因是,即使在PHP5中,也没有官方支持的遍历API。你可以编码,也可以解码,就是这样。没有验证,没有遍历键/值对的有效方法,总之,对它的支持很少。不要误解我的意思,您可以只使用foreach循环结构,但它确实很麻烦。JSON被吹捧为一种伟大的数据交换格式,因为JavaScript很容易理解词法结构。因此,从PHP到JavaScript

是否有任何理由让我选择JSON而不是XML,或者如果两者都可用,则反之亦然?在处理数据馈送时优化性能的提示也值得赞赏

说到PHP,我选择XML而不是JSON的一个原因是,即使在PHP5中,也没有官方支持的遍历API。你可以编码,也可以解码,就是这样。没有验证,没有遍历键/值对的有效方法,总之,对它的支持很少。不要误解我的意思,您可以只使用foreach循环结构,但它确实很麻烦。JSON被吹捧为一种伟大的数据交换格式,因为JavaScript很容易理解词法结构。因此,从PHP到JavaScript非常好,但是从JavaScript到PHP,或者从PHP到PHP,JSON并不是数据交换的最佳选择。

我自己也会选择JSON,因为XML非常庞大,解析起来非常困难。JSON小巧整洁,因此节省了带宽,而且还应该加快响应时间,因为它更容易生成、传输和解码。

无论您选择哪种方法,当您选择为IO序列化数据时,序列化机制都应该是透明和可替换的。如果您发现JSON不适合您,那么您应该能够交换前面和后面使用的序列化程序,并且您的数据结构保持不变


也就是说,我传输的大多数数据数组都是大键值树。我发现,如果数据结构没有包装在XML序列化中,那么可以更轻松地读取原始数据结构

关于file\u get\u内容与cURL的性能,我相信cURL会稍微快一点。对于您的应用程序,您可以运行一些快速基准测试来比较这两种方法


更重要的是,我更喜欢cURL,因为file_get_内容在实现了更高安全级别的PHP环境中不起作用,例如,通常禁用allow_url_fopen设置。如果您的应用程序只在您自己控制的环境中运行,那么文件内容就可以了,但如果不是这样,我会选择cURL以实现可移植性。

我不确定我是否100%同意这一点。除非您讨论的是大量数据,否则在PHP中迭代关联数组一点也不麻烦。更不用说有大量的工具和函数可用于数组操作。我主要是与支持XPath的SimpleXML进行比较。即使不是那么容易使用的PHPDOMXML,仍然比JSON遍历的自定义方法提供了更多的灵活性。为了验证,您至少还可以获得DTD,但我不记得上次使用它是什么时候了。