php에서 stream_context_create () 및 stream_context_get_options ()는 HTTP 요청 구성을 관리하고보기에 유용한 기능입니다. 개발자가 컨텍스트를 통해, 특히 file_get_contents () 또는 기타 스트림 조작 함수를 사용할 때 요청의 매개 변수 및 동작을 제어 할 때 네트워크 요청을 구성하는 데 도움이 될 수 있습니다. 이 기사에서는 간단한 예제로 HTTP 요청에 대한 구성 옵션을 관리하고보기 위해이 두 기능을 사용하는 방법을 보여줍니다.
Stream_Context_create ()는 프록시 서버, 요청 헤더, 타임 아웃 시간 등과 같은 HTTP 요청에 대한 사용자 정의 옵션을 지정할 수있는 스트림 컨텍스트를 작성하는 데 사용됩니다.
<?php
// 요청 된 설정 HTTP 옵션
$options = [
'http' => [
'method' => 'GET',
'header' => "Accept-language: en\r\n",
'timeout' => 60, // 요청 시간 초과를 설정하십시오60두번째
]
];
// a HTTP 문맥
$context = stream_context_create($options);
// 通过문맥发起 HTTP 묻다
$url = "http://m66.net/some/path";
$response = file_get_contents($url, false, $context);
// 출력 응답 내용
echo $response;
?>
위 코드에서는 Stream_Context_create ()를 통해 HTTP 구성을 포함하는 컨텍스트를 만듭니다. 이러한 맥락에서, 우리는 요청의 HTTP 메소드를 설정 하여 요청 헤더 및 시간 초과를 설정하고 설정합니다.
컨텍스트를 작성한 후에는 stream_context_get_options ()를 사용하여 현재 컨텍스트에서 구성 옵션을 볼 수 있습니다. 이는 구성 디버깅 및 검증에 매우 유용합니다.
<?php
// 获取当前문맥的配置옵션
$options = stream_context_get_options($context);
// 输出配置옵션
echo '<pre>';
print_r($options);
echo '</pre>';
?>
위 코드에서 Stream_Context_get_options ()는 현재 컨텍스트 구성 정보가 포함 된 배열을 반환합니다. 이 배열에는 stream_context_create () 를 통해 설정된 모든 HTTP 구성 옵션이 표시됩니다.
요청을 얻는 것 외에도 stream_context_create ()를 사용하여 게시물 요청을 보내고 데이터를 전달하며 관련 구성을 볼 수도 있습니다.
<?php
// 설정 POST 묻다的 HTTP 옵션
$options = [
'http' => [
'method' => 'POST',
'header' => "Content-Type: application/x-www-form-urlencoded\r\n",
'content' => http_build_query(['key1' => 'value1', 'key2' => 'value2']),
'timeout' => 60, // 요청 시간 초과를 설정하십시오60두번째
]
];
// 创建문맥
$context = stream_context_create($options);
// 보내다 POST 묻다
$url = "http://m66.net/api/submit";
$response = file_get_contents($url, false, $context);
// 출력 응답 내용
echo $response;
// 获取并显示当前配置옵션
$options = stream_context_get_options($context);
echo '<pre>';
print_r($options);
echo '</pre>';
?>
stream_context_create ()는 많은 HTTP 구성 옵션을 지원합니다. 다음은 몇 가지 일반적인 구성 옵션입니다.
방법 : HTTP 메소드 (예 : Get, Post, Put, Delete 등)
헤더 : 요청 헤더는 문자열 양식 (예 : 컨텐츠 유형 , 사용자 에이전트 등)으로 지정됩니다.
내용 : 전송 된 내용 (주로 후 요청에 사용)
시간 초과 : 요청 시간 초과 (단위 : 초)
프록시 : 프록시 서버 설정
user_agent : 사용자 에이전트 헤더를 설정하십시오
stream_context_create () 및 stream_context_get_options ()는 HTTP 요청에 대한 구성 옵션을 관리하고보기위한 간단하고 강력한 방법을 제공합니다. 이러한 도구를 사용하면보다 효율적이고 유연한 네트워크 요청을 위해 File_Get_Contents () 와 같은 PHP에서 스트리밍 작업을위한 사용자 정의 옵션을 쉽게 설정할 수 있습니다. 이러한 방법을 마스터하면 HTTP 요청을보다 잘 제어하고 응용 프로그램을 디버깅 할 수 있습니다.