stream_context_set_option
对资源流、数据包或者上下文设置参数
PHP 4 >= 4.3.0, PHP 5, PHP 7, PHP 8
stream_context_set_option() 用于在流上下文中设置特定的选项。这些选项会影响流的行为,比如设置代理、超时限制、SSL选项等。此函数通常与流操作相关,帮助开发者定制特定流的配置。
stream_context_set_option(resource $context, string $wrapper, string $option, mixed $value): bool
成功时返回 true,失败时返回 false。
以下是一个使用 stream_context_set_option 设置 HTTP 流上下文选项的示例:
<?php // 创建一个流上下文 $context = stream_context_create(); <p>// 设置 HTTP 流上下文的代理选项<br> stream_context_set_option($context, 'http', 'proxy', 'tcp://proxy.example.com:8080');</p> <p>// 设置超时时间为 30 秒<br> stream_context_set_option($context, 'http', 'timeout', 30);</p> <p>// 使用这个上下文打开一个 URL<br> $response = file_get_contents('<a rel="noopener" target="_new" class="" href="http://example.com">http://example.com</a>', false, $context);</p> <p>// 输出返回的内容<br> echo $response;<br> ?><br>
在此示例中,我们首先创建了一个 HTTP 流的上下文资源。接着,使用 stream_context_set_option 设置了代理服务器和超时时间的选项。这些设置将应用于所有通过该上下文访问的 HTTP 请求。最后,我们使用 file_get_contents 函数打开了指定的 URL,且该请求会使用我们自定义的上下文。