2014-02-11 2 views
0

PHP에서 cURL을 사용하여 웹 사이트 목록을 구문 분석하려고하지만 응답을받을 때 발생하는 html 오류를 감지하는 문제가 발생합니다. PHP 매뉴얼에 따르면, 아래의 코드 조각은 통화 중 (오류 페이지가 404 또는 500 같은 아무것도 구문 분석 쓸모가 내 책에 오류가 의미) 오류를 감지 도움이 될 것입니다CURL을 통한 오류 감지

if(curl_error($c)) { 
    print_r('error:' . curl_error($curl)); 
} 

위 코드는 404 오류는 작동하지만 예를 들어 500 오류를 포착 할 수 없습니다 (오류가 더 많이 잡힐 수 있음). 결과가 어떻게 간단하고 정확하게 무시할 수 500 또는 404 또는 401 등 인 경우 변수를 평가하고 그 결과를 무시하는 수동 검사를 추가

$httpCode = curl_getinfo ($curl, CURLINFO_HTTP_CODE); 

을하지만 난 것이다 : 나는 물론 이것을 사용할 수 있습니다 웹 사이트 분석에 도움이되지 않는 응답?

+1

if ($ httpCode == 200) {' – cmorrissey

답변

0
$wrong_http_codes = '^0|4.*|5.*$'; 
$http_code = curl_getinfo($curl, CURLINFO_HTTP_CODE); 
if (preg_match("/$wrong_http_codes/", $http_code) === 1) { 
    echo 'Error'; 
}