Как получить полный расширенный UserAgent из PHP в IE9 - PullRequest
1 голос
/ 07 июля 2011

в IE9 Команда $_SERVER['HTTP_USER_AGENT'] в php возвращает только короткую строку UA

, а в JavaScript я могу получить расширенный UserAgent с navigator.userAgent свойством

Есть ли способ получить полный расширенный UserAgent в PHP от IE9?

цель состоит в том, чтобы получить строки, которые я поместил в реестр: HKLM \ Software \ Microsoft \ Windows \ CurrentVersion\ Internet Settings \ 5.0 \ User Agent \ Post Platform расширенный UserAgent содержит строки из реестра.

Представляем строку пользовательского агента IE9

Ответы [ 3 ]

1 голос
/ 07 июля 2011

Разница между реализациями JavaScript и PHP функции getuserAgent() заключается в том, что JavaScript взаимодействует с самим браузером, в то время как PHP знает только данные, ранее отправленные браузером на сервер.

В PHP есть функция get_browser() (начиная с PHP 4), которая может дать вам наибольшую информацию из данных, доступных серверу: http://www.php.net/manual/ru/function.get-browser.php. Помните, что эта функция опирается на browscap.ini , который не входит в состав PHP и должен обновляться и устанавливаться вручную.

В любом случае расширенная информация о браузере пользователя не доступна на стороне сервера.

0 голосов
/ 07 июля 2011

В ссылке, которую вы опубликовали самостоятельно, Представляя строку пользовательского агента IE9 , он говорит:

IE9 отправит короткую строку UA по умолчанию

Сервер не получает длинную строку User Agent. Единственное решение, о котором я могу подумать - это опубликовать с AJAX, но это действительно безопасно. Люди могут просто выключить свой JavaScript.

0 голосов
/ 07 июля 2011

Я не думаю, что оно отправляется с заголовками, единственный способ - получить доступ к

navigator.userAgent

с помощью javascript и отправить его на ваш сервер с помощью AJAX.

EDIT

Или используйте функцию PHP getallheaders () для проверки всех заголовков, отправленных с запросом.

...