Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/227.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 使用DOMDocument加载xml时出现警告_Php - Fatal编程技术网

Php 使用DOMDocument加载xml时出现警告

Php 使用DOMDocument加载xml时出现警告,php,Php,我使用以下代码加载xml以进行进一步的处理,而加载本身在客户机服务器上显示以下警告,但在本地机器上工作正常 代码: 警告:DOMDocument::load(http://www.domainname.com/xmlfilename) [domdocument.load]:无法打开流:连接超时 警告:DOMDocument::load()[DOMDocument.load]:I/O警告:失败 加载外部实体的步骤“http://www.domainname.com/xmlfilename" 在调用

我使用以下代码加载xml以进行进一步的处理,而加载本身在客户机服务器上显示以下警告,但在本地机器上工作正常

代码:

警告:DOMDocument::load(http://www.domainname.com/xmlfilename) [domdocument.load]:无法打开流:连接超时

警告:DOMDocument::load()[DOMDocument.load]:I/O警告:失败 加载外部实体的步骤“http://www.domainname.com/xmlfilename"


在调用
load
之前,增加连接超时的时间:

libxml_set_streams_context(
    stream_context_create(
        array('http' => array('timeout' => 120))
    )
);


首先,确保您的客户端服务器配置为设置为
true


我还要检查服务器上的防火墙规则。可能是不允许进行HTTP请求。

很明显,您的服务器无法访问该文档……如果它说“连接超时”,则不能是
allow\u url\u fopen
问题。@Gordon是的,对此不确定,这更像是一个预防措施。不知道如果fopen包装器未启用,会引发什么样的错误。我使用了您提供的两种解决方案,但问题仍然存在,并且此问题仅出现在一个url上,其他url工作正常。您可以通过任何其他方式访问此url吗?浏览器<代码>工作组?如果没有,那么服务器可能不可用。是的,我可以通过浏览器访问该URL
libxml_set_streams_context(
    stream_context_create(
        array('http' => array('timeout' => 120))
    )
);
ini_set('default_socket_timeout', 120);