Вы можете авторизоваться через ВКонтакте, Фейсбук и оставить комментарий


Как определить браузер в PHP

Функция browser()

Определить браузер в PHP, можно вытащив данные из переменной $_SERVER['HTTP_USER_AGENT'].

Напишем функцию browser()

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php
function browser()
{
    
$ua $_SERVER['HTTP_USER_AGENT'];
    
    if (
stristr($ua'MSIE')) return 'Internet Explorer';
    if (
stristr($ua'Firefox')) return 'Firefox';
    if (
stristr($ua'Opera')) return 'Opera';
    if (
stristr($ua'Chrome')) return 'Google Chrome';
    if (
stristr($ua'Safari')) return 'Safari';
    if (
stristr($ua'Konqueror')) return 'Konqueror';
    if (
stristr($ua'Iceweasel')) return 'Debian Iceweasel';
    if (
stristr($ua'SeaMonkey')) return 'SeaMonkey';

    
// Браузеров очень много, все вписывать смысле нет, Gecko почти везде встречается
    
if (stristr($ua'Gecko')) return 'Gecko';

    
// а может это вообще поисковый робот
    
return 'Search Bot';
}
?>

Небольшое разъяснение

Список юзер-агентов достаточно большой. Некоторые браузеры сделаны на основе других браузеров и может данные в них могут быть очень похожими.

Например Google Chrome сделан на основе браузера Safari, и записи очень похожи:

Google Chrome — Mozilla/5.0 ... Chrome/7.0.503.0 Safari/534.6
Safari — Mozilla/5.0 ... Version/5.0.2 Safari/533.18.5

Поэтому очередность проверки данных по тексту достаточно велика.

См. также определение браузера в JavaScript

Опубликовано: 18 января 2011  ·  Автор: Артём Фёдоров  ·  3646 просмотров

Категория

ГлавнаяПрограммированиеPHPКак определить браузер в PHP

Чтобы оставить комментарий нужно авторизоваться на сайте
или войти через ВКонтакте или Фейсбук

Войти через ФейсбукВойти через Твиттер

Комментарии

Всегда пожалуйста :)
Артём Фёдоров · 4 года назад
Просто, доступно, понятно!
Спасибо!
· 4 года назад
PHP, Программирование

© 2010-2017 expange.ru
При полном или частичном копировании статей сайта, ссылка на источник обязательна.

Хотите узнать больше информации, пишите на: artem@expange.ru

Полезное онлайн  ·  Новости  ·  Изображения  ·  Статьи по датам

О проекте  ·  Правила пользования  ·  Представительства

Благодарности и пожелания