首页 >后端开发 >php教程 >使用 PHP 的 file_get_contents() 时如何设置 HTTP 标头?

使用 PHP 的 file_get_contents() 时如何设置 HTTP 标头?

Susan Sarandon
Susan Sarandon原创
2024-12-07 21:57:17473浏览

How Can I Set HTTP Headers When Using PHP's file_get_contents()?

使用 PHP 的 file_get_contents() 设置 HTTP 标头

简介:
PHP 的 file_get_contents() 函数启用通过 URL 检索文件内容。但是,我们可以扩展其功能以随请求一起传输 HTTP 标头吗?

解决问题:
虽然 file_get_contents() 本身不支持发送 HTTP 标头,但还有一种替代方法使用流的解决方案

实现:
要指定 HTTP 标头,请使用stream_context_create() 创建流上下文,并使用以下语法在“http”数组中包含所需的标头:

$opts = [
    "http" => [
        "method" => "GET",
        "header" => "Accept-language: en\r\n" .
            "Cookie: foo=bar\r\n"
    ]
];

随后,将此上下文提供给 file_get_contents() 作为第三个参数,如图所示如下:

$file = file_get_contents('http://www.example.com/', false, $context);

结论:
该解决方案允许我们在使用 file_get_contents() 时设置自定义 HTTP 标头,使我们能够控制请求行为并可能增强其功能。

以上是使用 PHP 的 file_get_contents() 时如何设置 HTTP 标头?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn