curl 如何为get_headers PHP函数设置用户代理

hc8w905p  于 2022-11-13  发布在  PHP
关注(0)|答案(3)|浏览(150)

我知道为curl设置用户代理很容易,但是我的代码是基于get_headers的,默认情况下get_headers用户代理是空的。谢谢你的帮助。

yvfmudvl

yvfmudvl1#

也许是这个?

ini_set('user_agent', 'Mozilla/5.0');
szqfcxe2

szqfcxe22#

get_headers只指定由 server 发送到 client 的数据(在本例中是PHP),它不指定请求头。
如果您试图查找发出get_headers请求的用户代理,则必须用途:

ini_get('user_agent');

有关更多文档,请参见以下链接:

puruo6ea

puruo6ea3#

对于其他人来说,最好的选择是使用stream context options(特别是用户代理选项),而不是在服务器范围内进行更改,谁知道会发生什么情况。
PHP文档已经展示了一个更改HTTP方法的示例(遗憾的是,还使用了全局设置🤦)。
在任何情况下,代码都将类似于:

$context = stream_context_create([
    'http' => [
        'user_agent' => 'Mozilla/5.0'
    ]
]);

$headers = get_headers('http://example.com', true, $context);

相关问题