Из руководств я запускаю простой код для получения информации обозревателя с помощью get_browser()
.
Код в руководствах –
Код Я бегу (почти такой же / я пытался удалять echo "<pre>";
но никакого эффекта) –
<?php echo $_SERVER['HTTP_USER_AGENT'] . "\n\n"; $browser = get_browser(null, true); echo "<pre>"; print_r($browser); ?>
Это error/illegal characters
я получаю в browser_name_regex
–
Я также пробовал кодировку UTF 8 для символов, но проблема все еще сохраняется.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Test browser</title> </head> <body> <?php echo $_SERVER['HTTP_USER_AGENT'] . "\n\n"; $browser = get_browser(null, true); echo "<pre>"; print_r($browser); ?> </body> </html>
Дайте мне знать, что я делаю неправильно, и где искать решение?
Еще одна вещь, чтобы спросить, в одном документе –
Попытка определить возможности браузера пользователя, просмотрев информацию обозревателя в файле browscap.ini.
Где я могу найти этот browscap.ini
в своей системе, я использую Windows 7
… хотя я не очень уверен, связано ли это с этой проблемой или нет.
Как вы сказали, что вы нашли файл browsercap.in в указанном вами пути, укажите этот абсолютный путь C:\xampp\php\extras\browscap.ini
в файле php.ini, например
У меня есть моя локальная настройка (php.ini), на самом деле я создал файл броузера от другой функции, а затем вставлял его в файл, а затем нашел правильный вывод.
[browscap] ;browscap = extra/browscap.ini browscap = D:\ZendServer\etc\browscap.ini
вы можете указать свой абсолютный путь, как
[browscap] ;browscap = extra/browscap.ini browscap = C:\xampp\php\extras\browscap.ini
и код для проверки
echo $_SERVER['HTTP_USER_AGENT'] . "\n\n"; $browser = get_browser(null, true); echo "<pre>";print_r($browser);die;
Тот же вопрос задавался в результатах PHP – get_browser ()
Основываясь на информации там и информации, найденной на https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=612364, которая объясняет ошибку более подробно, я создал несколько строк кода, который решает проблему ,
Я отправил свой ответ и здесь, и там.
Код:
if (function_exists('get_browser') && ini_get('browscap')) { $browser_info = get_browser(null, true); if (function_exists('mb_convert_encoding')) $browser_info['browser_name_regex'] = mb_convert_encoding($browser_info['browser_name_regex'], "UTF-8", "ISO-8859-1"); print_r($browser_info); }