Я хочу установить $ _SERVER ['HTTP_USER_AGENT'] вручную, прежде чем вызывать функцию get_browser().
<?php
...
$_SERVER['HTTP_USER_AGENT'] = $default_browser;
$browser = get_browser(null, true);
print_r($browser);
?>
но это дает мне ошибку.
PHP Warning: get_browser(): HTTP_USER_AGENT variable is not set, cannot determine user agent name in /home/insu/a.php on line 6
Можно ли вручную установить HTTP_USER_AGENT?
Вы можете сделать это: php $browser = get_browser($default_browser, true); print_r($browser);
php $browser = get_browser($default_browser, true); print_r($browser);
Но вы не должны полагаться на get_browser()
поскольку он очень медленный.
Вы можете выбирать между множеством Parsers здесь https://github.com/ThaDafinser/UserAgentParser
$default_browser
непосредственно вget_browser()
. Изменение значения$_SERVER
не приводит к изменению фактического заголовка агента пользователя и «[b] y по умолчанию, используется значение заголовка HTTP агента пользователя». Но здесь может быть несколько проблем; вы получаете предупреждение, даже не пытаясь переопределить значение агента пользователя? Этот отчет об ошибке выглядит актуально.