Невозможно получить броузер для загрузки на OSX независимо от того, какую версию я использую или где я ее помещаю

Я пытаюсь запустить следующий код:

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

Ошибка, которую я получаю, выглядит следующим образом:

Предупреждение: get_browser() [function.get-browser]: директива указателя броузера не установлена в /Applications/XAMPP/xamppfiles/htdocs/series/firstfile/index.php в строке 3

Я запускаю OSX 10.8.4 с XAMPP. Информация о брошюре в моем файле php.ini выглядит следующим образом:

[browscap]
;browscap = /Applications/XAMPP/xamppfiles/etc/browscap.ini"

Я также пробовал следующие пути:

/Macintosh HD/Applications/XAMPP/xamppfiles/etc/browscap.ini

Я загрузил и поместил browscap.ini файл browscap.ini в этот каталог, а также попытался ссылаться на него из других локаций, если это проблема разрешения или что-то еще.

Я предполагаю, что проблема заключается в том, как я пишу свой путь, но я просто не могу найти способ заставить XAMPP принять его, и когда вы перейдете на phpinfo() он указан под 'core' качестве browscap - no value.

Очевидно, что я перезапускал Apache и т.д. С каждым изменением, чтобы убедиться, что php.ini обновлен.

Вся информация, которую я могу найти, похоже, относится к Windows, а не к Mac, поэтому я борюсь!

2 ответа

Интересно, какую ценную информацию вы ожидаете получить от этой функции.

Но что бы это ни было, пожалуйста, имейте в виду, что это считается плохой практикой, потому что вы по существу практикуете обнюхивание на основе сервера, и единственной базой информации является строка пользовательского агента, которая может быть чем угодно и не должна представлять реальную ситуацию, Кроме того, информация, подобная "javascript", может представлять только кодированную способность клиента, а не текущие настроенные способности, что может быть меньше.

Если вы все еще считаете, что функция будет полезной, вам необходимо решить задачу получения копии этого файла "browsercap.ini", который эта функция хочет использовать, и вы должны постоянно обновлять этот файл, чтобы включить новые версии браузера.

На странице документации get_browser() есть ссылка на источник файла. Загрузите файл и укажите параметр INI в это место. Обязательно активируйте его, удалив полуколон.


Я дал вам инструкции для решения вашей проблемы, я думаю, это поможет вам. ваш путь к файлу был абсолютно прав, но вы забыли удалить точку с запятой и метку двойных кавычек [броузерка]; броузер =/Applications/XAMPP/xamppfiles/etc/browscap.ini "

загрузите файл, нажав на ссылку и поместите ее в путь к файлу, который я вам объясняю ниже http://tempdownloads.browserscap.com/stream.asp?PHP_BrowsCapINI

Да, похоже, XAMPP на Mac OSX устанавливается по-разному, и вы не указываете корневой каталог. Сначала найдите файл "php.ini", установленный в следующем месте: /Applications/XAMPP/xamppfiles/etc/php.ini Во-вторых, "php.ini" защищен от записи в этом месте, поэтому скопируйте его на рабочий стол, что позволит вам изменить его. С рабочего стола откройте в TextEdit и найдите текст, читающий "броузер" (мы вернемся к этому). В-третьих, загрузите копию файла "php_browscap.ini" из проекта "Возможности браузера".

Mac OSX (cont.) Fourth, change filename from 'php_browscap.ini' to 'browscap.ini'. Place a copy in the following location:** /Applications/XAMPP/xamppfiles/etc/extra/browscap.ini Fifth, now go back and update file 'php.ini' with the new location of 'browscap.ini' to read as follows: [browscap] browscap = /Applications/XAMPP/xamppfiles/etc/extra/browscap.ini Sixth, save 'php.ini' and copy from desktop back into original location: /Applications/XAMPP/xamppfiles­/etc/php.in
 Seventh, restart XAMPP. ** Note: I think the location of 'browscap.ini' may be somewhat arbitrary. What seems most important is the pathname that is listed in file 'php.ini' under [browscap] (in my case, browscap = /Applications/XAMPP/xamppfiles­/etc/extra/browscap.ini). Good luck fellow Mac XAMPP users!

licensed under cc by-sa 3.0 with attribution.