Rob
Rob

Reputation: 2362

With simplexml_load_file I would like to differeniate between time out and and 404 errors

I am currently using:

$page = simplexml_load_file('http://www.example.com/page.html');

In my code I would like to retry if the page time outs, but if the page is not found (404) I would like to add it to a list of not found pages.

If I could differentiate between the two types of errors I can do the rest.

For the curious you can get the status code with the following code:

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

   ...

But for I wanted to do curl worked out better.

Upvotes: 0

Views: 596

Answers (1)

Pim Jager
Pim Jager

Reputation: 32119

I think you would have to use curl for that. Curl can tell you if the request timedout or returned a 404. If neither of these happened you could just feed the results of the request to simplexml_load_string.

http://nl2.php.net/curl

Upvotes: 3

Related Questions