php에서 file_get_contents () 함수는 파일을 읽거나 URL에서 컨텐츠를 얻는 데 사용됩니다. HTTP 프로토콜을 통해 원격 자원을 요청 해야하는 경우 file_get_contents ()는 스트림 컨텍스트를 결합하여 요청의 컨텍스트 옵션을 설정할 수 있습니다. stream_context_get_options () 함수를 사용하여 현재 스트림 컨텍스트의 구성 정보를보고 요청이 어떻게 전송되는지 이해할 수 있습니다.
먼저 file_get_contents () 의 기본 사용법을 검토해 봅시다. 이 기능을 사용하면 로컬 또는 원격 파일 내용을 읽을 수 있습니다. 원격 파일 인 경우 PHP는 HTTP 프로토콜을 사용하여 요청을 작성합니다.
추가 HTTP 요청 헤더 또는 기타 옵션을 설정 해야하는 경우 스트림 컨텍스트를 만들 수 있습니다. 이 컨텍스트에는 설정 한 다양한 구성 옵션이 포함되어 있습니다.
예를 들어, 원격 URL에 액세스하려고한다고 가정하면 코드가 다음과 같습니다.
$url = 'http://www.example.com/data.json';
$response = file_get_contents($url);
echo $response;
그러나 더 많은 옵션 (예 : 요청 헤더, 요청 메소드 등)을 설정하려면 컨텍스트를 사용해야합니다.
Stream_Context_create () 함수를 통해 스트림 컨텍스트를 생성하고 HTTP 요청 관련 옵션을 설정할 수 있습니다. 다음은 컨텍스트를 사용하여 HTTP 요청 헤더를 설정하는 방법을 보여주는 예입니다.
$options = [
'http' => [
'method' => 'GET',
'header' => "Accept-language: en\r\n" .
"Cookie: foo=bar\r\n"
]
];
$context = stream_context_create($options);
$url = 'http://m66.net/data.json';
$response = file_get_contents($url, false, $context);
echo $response;
이 예에서는 HTTP 요청 헤더가 포함 된 컨텍스트를 작성하여 요청을 시작하기 위해 File_Get_Contents () 로 전달합니다.
컨텍스트가 있고 구성 항목을 보려면 stream_context_get_options () 함수를 사용할 수 있습니다. 이것은 모든 설정 옵션을 포함하여 현재 스트림 컨텍스트에 대한 모든 구성 정보를 반환합니다.
예를 들어:
$options = [
'http' => [
'method' => 'GET',
'header' => "Accept-language: en\r\n" .
"Cookie: foo=bar\r\n"
]
];
$context = stream_context_create($options);
// 컨텍스트 구성 정보를 얻습니다
$config = stream_context_get_options($context);
print_r($config);
출력이 표시됩니다.
Array
(
[http] => Array
(
[method] => GET
[header] => Accept-language: en
Cookie: foo=bar
)
)
file_get_contents () 및 stream_context_get_options ()를 결합하면 사용자 정의 구성으로 HTTP 요청을 만들고 필요할 때 이러한 구성 정보를 볼 수 있습니다. 이는 HTTP 요청의 디버깅 및 더 깊은 제어에 매우 도움이됩니다.
file_get_contents () 및 스트리밍 컨텍스트를 사용하면 HTTP 요청을보다 유연하게 보낼 수 있습니다.
stream_context_get_options () 함수를 사용하면 현재 스트림 컨텍스트의 구성 정보를 볼 수 있습니다.
이 메소드는 요청을 디버그하거나 실제로 사용하는 요청 구성을 보는 데 도움이 될 수 있습니다.
이 기사가 File_Get_Contents () 및 Stream_Context_get_options ()를 결합하여 HTTP 요청의 컨텍스트 구성을보고 조작하는 방법을 이해하는 데 도움이되기를 바랍니다.