Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.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 对于simplexml_load_文件,我想区分超时和404错误_Php_Http_Simplexml - Fatal编程技术网

Php 对于simplexml_load_文件,我想区分超时和404错误

Php 对于simplexml_load_文件,我想区分超时和404错误,php,http,simplexml,Php,Http,Simplexml,我目前正在使用: $page = simplexml_load_file('http://www.example.com/page.html'); 在我的代码中,如果页面超时,我希望重试,但是如果页面未找到(404),我希望将其添加到未找到页面的列表中 如果我能区分这两种类型的错误,我可以做其余的 出于好奇,您可以使用以下代码获取状态代码: if ($page == FALSE) { list($version,$status_code,$msg) = explode(' ',$http

我目前正在使用:

$page = simplexml_load_file('http://www.example.com/page.html');
在我的代码中,如果页面超时,我希望重试,但是如果页面未找到(404),我希望将其添加到未找到页面的列表中

如果我能区分这两种类型的错误,我可以做其余的

出于好奇,您可以使用以下代码获取状态代码:

if ($page == FALSE) 
{
  list($version,$status_code,$msg) = explode(' ',$http_response_header[0], 3);
  echo 'Status Code: '.$status_code."\n";

   ...

但是因为我想做卷发,所以效果更好。

我想你应该用卷发来做。Curl可以告诉您请求timedout或返回404。如果这两种情况都没有发生,您可以将请求的结果提供给simplexml\u load\u字符串


我想你得用卷曲来做这个。Curl可以告诉您请求timedout或返回404。如果这两种情况都没有发生,您可以将请求的结果提供给simplexml\u load\u字符串

可能重复的可能重复的