file_get_contents 및 stream_context_create를 사용한 HTTP 응답 코드
POST 요청을 수행하려면 stream_context_create와 함께 file_get_contents를 활용할 수 있습니다. 그러나 HTTP 오류가 발생하면 경고가 나타날 수 있습니다. 이 문서에서는 이 문제를 다루고 경고를 억제하고 스트림에서 응답 코드를 얻기 위한 솔루션을 제공합니다.
시작하려면 다음 시나리오를 고려하세요.
$options = ['http' => [ 'method' => 'POST', 'content' => $data, 'header' => "Content-Type: text/plain\r\n" . "Content-Length: " . strlen($data) . "\r\n", ]]; $context = stream_context_create($options); $response = file_get_contents($url, false, $context);
이 코드는 POST 요청을 처리합니다. 그러나 HTTP 오류가 발생하면 경고가 표시됩니다.
file_get_contents(...): failed to open stream: HTTP request failed! HTTP/1.0 400 Bad Request
또한 false를 반환합니다. 이 문제로 인해 두 가지 우려 사항이 발생합니다.
경고 억제
경고를 억제하려면 다음을 수행하세요. stream_context_create() 내에서ignore_errors 옵션을 활용하십시오:
$context = stream_context_create(['http' => ['ignore_errors' => true]]);
이 수정을 사용하면 경고가 더 이상 표시되지 않습니다.
응답 코드 얻기
스트림에서 응답 코드를 얻으려면 http_response_header를 검사하면 됩니다. 변수:
$context = stream_context_create(['http' => ['ignore_errors' => true]]); $result = file_get_contents("http://example.com", false, $context); var_dump($http_response_header);
이 코드는 응답 코드를 포함하여 응답 헤더가 포함된 배열을 표시합니다.
위 내용은 `file_get_contents` 및 `stream_context_create`를 사용하여 HTTP 오류를 처리하고 응답 코드를 검색하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!