get_browser() и browscap.ini. Особенности.

Leo

Новичок
get_browser() и browscap.ini. Особенности.

Ув. ALL, В спецификации написано:

"get_browser() пытается определить возможности браузера пользователя. Это делается путём просмотра информации в файле browscap.ini file. По умолчанию используется значение переменной $HTTP_USER_AGENT; однако вы можете изменить это (т.е. просмотреть другую информацию о браузере), передав необязательный параметр user_agent функции get_browser().
Информация возвращается как объект, содержащий различные элементы данных, представляющие, например, номер наибольшей и наименьшей версии браузера и строку ID; значения TRUE/false для таких возможностей, как отображение фрэймов, JavaScript, куки; и так далее.
Поскольку browscap.ini содержит информацию о многих браузерах, он основан на пользовательских обновлениях данных. Формат этого файла достаточно понятен сам по себе...."

Правильно ли я понял, что на сервере лежит browscap.ini, и при каждом обращении клиента, апач переписывает в него из клиентского запроса данные о его(клиента) браузере. А потом, из browscap.ini можно извлекать эту информацию при помощи функции get_browser() ???
 

zerkms

TDD infected
Команда форума
нет, не правильно
в файле browscap хранится информация, необходимая для правильной идентификации браузера
в общем говоря - тебя, как программиста, не должен волновать этот файл - тебе get_browser() отдаёт нужную инфу, а откуда и как она получена - не важно
 

Leo

Новичок
Т.е. апач получает инфу о браузере клиента посредством $HTTP_USER_AGENT в неудобном виде,к примеру так:
4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; FunWebProducts)

потом обращаясь через get_browser($HTTP_USER_AGENT ) к browscap.ini, который хранится гдето на другом справочном сервере расшифровывает ее и предоставляет ее как массив get_browser()

Так?

Так вот у меня get_browser() не работает, видимо потому, что админ не указал путь к этому browscap.ini

phpinfo():
................
browscap no value no value
....................
и мне надо ему сказать, присвой ка ты, дружок, переменной browscap значение
ftp://ftp.usask.ca/pub/vendor/microsoft/WinNT%20Intel/NT4_sp6a/unpacked/browscap.ini

Все правильно?
 

Фанат

oncle terrible
Команда форума
НЕТ, РАЗУМЕЕТСЯ!
не значение ftp://ftp.usask.ca/pub, а значение ЛОКАЛЬНОГО ФАЙЛА, сохраненного с этого адреса!
Чтобы пхп при кахдом запросе страницы не лазил за тридевять земель скачивать огромный файл!
Неужели это не очевидно?
 

Leo

Новичок
Админ вроде прописал:
..................
browscap conf/browscap.ini conf/browscap.ini
.........................
.........................
Однако классический пример от http://ru2.php.net/get_browser

<?php
ini_set('display_errors',1); //Включим сообщения об ошибках
error_reporting(E_ALL);


echo $_SERVER['HTTP_USER_AGENT'] . "\n\n";

$browser = get_browser(null, true);
print_r($browser);
?>

дает:
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; InfoPath.2)

Т.е.
$browser = get_browser(null, true);
print_r($browser);
не "фунициклирует"

Может кто что подскажет?

-~{}~ 18.06.07 23:04:

PHPinfo здесь: http://www.brouk.org/tutors/php_examples/example_server_info.php

А get_browser здесь:
http://www.brouk.org/tutors/php_examples/get_br.php
 
Сверху