Как узнать название и версию браузера с помощью php

Как узнать название и версию браузера с помощью phpВ этой маленькой статейке я покажу как можно средствами php получить информацию о браузере пользователя. А именно, получить название и версию.
Скрипт работает на основе использования данных о user_agent, которые можно легко получить из суперглобальной переменной $_SERVER[‘HTTP_USER_AGENT’]. Данные, которые мы получим выглядят примерно так:

-для Google Chrome
Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1700.76 Safari/537.36

-для FireFox
Mozilla/5.0 (Windows NT 6.1; rv:12.0) Gecko/20100101 Firefox/12.0

— для Safari
Mozilla/5.0 (Windows NT 6.1) AppleWebKit/534.57.2 (KHTML, like Gecko) Version/5.1.7 Safari/534.57.2

Как вы уже наверняка поняли, для каждого браузера имеется своя запись в $_SERVER[‘HTTP_USER_AGENT’], основываясь на этом тексте не сложно написать функцию, для получения нужных нам данных, а именно — названия и версии браузера. Приступим к коду:

/**
* Функция для получения названия и версии браузера
*
* @return - вернет ассоциативный массив с ключами name и version
*/
function getInfoBrowser(){
    $agent = $_SERVER['HTTP_USER_AGENT'];
    preg_match("/(MSIE|Opera|Firefox|Chrome|Version)(?:\/| )([0-9.]+)/", $agent, $bInfo);
    $browserInfo = array();
    $browserInfo['name'] = ($bInfo[1]=="Version") ? "Safari" : $bInfo[1];
    $browserInfo['version'] = $bInfo[2];     
    return $browserInfo;
}

// Пример использования функции
$browserInfo = getInfoBrowser();
var_dump($browserInfo);exit;

Вот и все. Код тестировался на IE7-9, FireFox 12, Google Chrome 32, Safari 5.1 и Опере 9.8. Если возникнут проблемы с каким-то другим браузером пишите в комментарии, будем пытаться решить.

Рассказать друзьям:


Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

*