현재 위치: > 최신 기사 목록> 시간 초과 시간 또는 user_agent가 성공적으로 설정되었는지 확인하는 방법은 무엇입니까?

시간 초과 시간 또는 user_agent가 성공적으로 설정되었는지 확인하는 방법은 무엇입니까?

M66 2025-06-04

PHP에서 Stream_Context_get_options 함수는 스트림 컨텍스트를 사용할 때 매우 유용하며, 이는 시간 초과 또는 사용자 에이전트와 같은 스트림 컨텍스트에서 특정 옵션이 성공적으로 설정되어 있는지 확인하는 데 사용할 수 있습니다.

stream_context_create를 통해 스트림 컨텍스트를 생성하고 몇 가지 옵션을 설정하면 Stream_Context_get_options가 이러한 설정을 얻고 확인하는 데 도움이 될 수 있습니다. 이 기사에서는이 기능을 사용하여 시간 초과 및 사용자 에이전트가 성공적으로 설정되어 있는지 확인하는 방법을 소개합니다.

스트림 컨텍스트를 작성하고 옵션을 설정하십시오

먼저 스트림 컨텍스트를 작성하고 일부 옵션을 설정해야합니다. 예를 들어 HTTP 옵션에서 TimeOutUser_Agent를 설정하여 요청 시간 초과를 제어하고 요청 헤더에서 사용자 에이전트를 설정할 수 있습니다.

 <?php
// 스트림 컨텍스트 옵션을 만듭니다
$options = [
    'http' => [
        'timeout' => 10,  // 시간 초과 시간을 설정하십시오10두번째
        'user_agent' => 'PHP-Client/1.0'  // 설정User-Agent
    ]
];

// 스트림 컨텍스트를 만듭니다
$context = stream_context_create($options);

// 네트워크 요청 에이 스트리밍 컨텍스트를 사용하십시오
$url = "http://m66.net/somepath";
$response = file_get_contents($url, false, $context);

// 출력 응답 결과
echo $response;
?>

위 코드에서는 두 가지 옵션을 설정합니다.

  • 타임 아웃은 10 초입니다.

  • user_agentphp-client/1.0 입니다.

그런 다음 file_get_contents를 사용하여 요청을 보내고 응답을 읽습니다.

stream_context_get_options를 사용하여 설정을 확인하십시오

그런 다음 Stream_Context_get_options를 사용하여 이러한 옵션을 성공적으로 설정했는지 확인하십시오. 이 함수는 스트림 컨텍스트를 통해 설정된 모든 옵션을 포함하는 배열을 반환하며, 여기서 HTTP 섹션을 추출하여 타임 아웃user_agent가 포함되어 있는지 확인할 수 있습니다.

 <?php
// 스트림 컨텍스트에서 모든 옵션을 얻으십시오
$contextOptions = stream_context_get_options($context);

// 출력 스트림 컨텍스트의 모든 옵션
echo '<pre>';
print_r($contextOptions);
echo '</pre>';

// 检查是否설정了timeout그리고user_agent
if (isset($contextOptions['http']['timeout'])) {
    echo '超时时间已설정为:' . $contextOptions['http']['timeout'] . '두번째<br>';
} else {
    echo '未설정超时时间<br>';
}

if (isset($contextOptions['http']['user_agent'])) {
    echo 'User-Agent已설정为:' . $contextOptions['http']['user_agent'] . '<br>';
} else {
    echo '未설정User-Agent<br>';
}
?>

이 코드에서는 Stream_Context_get_options를 사용하여 스트림 컨텍스트에서 옵션을 얻고 인쇄합니다. 그런 다음 ISSET 에서 TimeOutUser_Agent를 성공적으로 설정했는지 확인하십시오.

운영 결과 분석

스트림 컨텍스트 옵션이 성공적으로 설정되면 stream_context_get_options 함수에 의해 반환 된 배열에는 설정된 옵션이 포함됩니다. 예를 들어, 반환 결과는 다음과 같습니다.

 Array
(
    [http] => Array
        (
            [timeout] => 10
            [user_agent] => PHP-Client/1.0
        )
)

스크립트가 출력됩니다.

 超时时间已설정为:10두번째
User-Agent已설정为:PHP-Client/1.0

이러한 옵션이 성공적으로 설정되지 않으면 ISSET 검사는 False를 반환하고 "타임 아웃 설정 설정"또는 "사용자 에이전트가 설정되지 않음"을 표시합니다.

요약

stream_context_get_options를 사용하면 시간 초과 ( 타임 아웃 ) 및 사용자 에이전트 ( user_agent )와 같이 스트림 컨텍스트의 옵션이 성공적으로 설정되어 있는지 쉽게 확인할 수 있습니다. 이 접근법은 스트림 컨텍스트 설정을 디버깅하고 검증 할 때 매우 유용하여 요청 된 매개 변수의 정확성을 보장하는 데 도움이됩니다.