Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP cURL多调用与simplexml\u加载\u文件_Php_Curl_Simplexml_Libcurl - Fatal编程技术网

PHP cURL多调用与simplexml\u加载\u文件

PHP cURL多调用与simplexml\u加载\u文件,php,curl,simplexml,libcurl,Php,Curl,Simplexml,Libcurl,如果我在web应用程序的每个页面上多次调用api,cURL是否适合我,或者使用带有URL包装器的simplexml\u load\u文件是否可以 多次打开、拨打和关闭cURL连接是否会对应用程序产生负面影响?您应该没事。当您将simplexml_load_file与URL包装器一起使用时,它所做的事情与cURL非常相似,只是PHP为您管理连接的打开和关闭。事实上,传统的看法是,cURL将以比使用带有URL包装器的simplexml\u load\u file更有效的方式处理连接。此外,并非所有共

如果我在web应用程序的每个页面上多次调用api,cURL是否适合我,或者使用带有URL包装器的simplexml\u load\u文件是否可以


多次打开、拨打和关闭cURL连接是否会对应用程序产生负面影响?

您应该没事。当您将
simplexml_load_file
与URL包装器一起使用时,它所做的事情与cURL非常相似,只是PHP为您管理连接的打开和关闭。事实上,传统的看法是,cURL将以比使用带有URL包装器的
simplexml\u load\u file
更有效的方式处理连接。此外,并非所有共享主机都支持将
simplexml\u load\u file
与url一起使用,因此您通常不得不求助于cURL。

首先,我不会养成使用simplexml和DOMDocument的url加载函数进行api调用的习惯。。。你最好使用cURL、file\u get\u contents、fopen等。。通过这种方式,您可以在获得解析部分之前捕获请求/响应的任何问题,即,您具有更好的处理错误和引导控制流的能力,并记录/显示关于出错原因的更有意义的消息

话虽如此,我决不会创建和销毁多个cURL资源处理程序(如果你是这个意思的话),而是打开一个,然后继续重置属性并发送新的请求


至于哪一个是更快的还是更少的资源密集型,我认为与我上面提到的其他事情相比,这是最小的问题。。。但我想这是我的看法。

你可以测试一下。。。这真的不难做到。他想知道是多次使用simplexml\u load\u文件还是多次使用cURL文件更好。至少这是我的看法。没错,但我想说,如果你所在的地方同时关闭了URL包装器和禁用了curl,并且需要通过HTTP获取XML资源,那么你就有点完蛋了:)谢谢你,我启用了curl,因为我可以记录错误并找出原因以及api是否超时。没问题。。。顺便说一句,你想看看自由和开放源码软件世界中的一些http客户端软件包。。。它们确实倾向于帮助创建所有thsi功能,而不是使用原始php cURL函数创建jsut。您可能想看看Zend_Http_客户端或sfWebBrowserPlugin(不过对于后者,您必须进行一些修改,以删除或集成它所具有的依赖项)。玩得高兴