
stream_context_set_default 함수는 PHP의 stream_context_create 함수를 사용하여 생성된 스트림 컨텍스트에 기본적인 요청 헤더를 설정하는 함수입니다.
stream_context_set_default 함수의 첫 번째 인자로 전달하는 배열에는 'http' 항목을 포함할 수 있습니다. 'http' 항목은 요청 헤더를 설정하는 데 사용됩니다. 예를 들어, 'http' 항목에 'header' 키를 사용하여 요청 헤더를 설정할 수 있습니다.
예를 들어, 다음과 같이 요청 헤더를 설정할 수 있습니다.
#hostingforum.kr
php
$context = stream_context_create(array(
'http' => array(
'header' => 'Accept: application/json'
)
));
이 함수를 사용하여 설정한 헤더는 해당 스트림 컨텍스트만 적용됩니다. 다른 요청에서 다시 설정해야 하는 것은 아닙니다. 하지만, stream_context_set_default 함수를 사용하여 설정한 헤더는 해당 스트림 컨텍스트가 사용되는 동안 유지됩니다.
예를 들어, 다음 코드를 사용하여 요청을 보내면, 설정한 헤더가 유지됩니다.
#hostingforum.kr
php
$context = stream_context_create(array(
'http' => array(
'header' => 'Accept: application/json'
)
));
$url = 'https://api.example.com/data';
$data = file_get_contents($url, false, $context);
하지만, stream_context_set_default 함수를 사용하여 설정한 헤더는 다른 스트림 컨텍스트에서 유지되지 않습니다. 다른 스트림 컨텍스트를 사용하여 요청을 보내면, 설정한 헤더가 유지되지 않습니다.
#hostingforum.kr
php
$context1 = stream_context_create(array(
'http' => array(
'header' => 'Accept: application/json'
)
));
$context2 = stream_context_create(array(
'http' => array(
'header' => 'Accept: text/html'
)
));
$url = 'https://api.example.com/data';
$data1 = file_get_contents($url, false, $context1);
$data2 = file_get_contents($url, false, $context2);
따라서, stream_context_set_default 함수를 사용하여 설정한 헤더는 해당 스트림 컨텍스트만 적용됩니다. 다른 스트림 컨텍스트에서 유지되지 않습니다.
2025-03-07 00:45