Как определить устройства пользователя на сайте

1376504573_untitled-3Как определить модель мобильного телефона или планшета пользователя на сайте?

Есть 2 варианта: Чистый PHP или готовая надстройка MobileDetect.php ( https://github.com/serbanghita/Mobile-Detect )

Первый вариант придётся писать собственноручно ипользуя переменную User_Agent и через неё определять модель телефона пользователя.

Гораздо проще использовать библиотеку Мобайл Детект, авторы упростили Вам работу, да ещё и бесплатно.

  1. Скачиваем.
  2. Подключаем:
    // Подключение и инициализация класса
    require_once 'Mobile_Detect.php';
    $detect = new Mobile_Detect;
  3. Используем:
    // Если мобильное устройство (телефон или планшет).
    if ( $detect->isMobile() ) {
    
    }
    
    // Если планшет
    if( $detect->isTablet() ){
    
    }
    
    // Если не планшет и не мобильное устройство
    if( $detect->isMobile() && !$detect->isTablet() ){
    
    }
    
    // Проверка специфической платформы:
    if( $detect->isiOS() ){
    
    }
    
    if( $detect->isAndroidOS() ){
    
    }
    
    // Так же можете воспользоваться методом is() для определения каких-то свойств.
    // ВНИМАНИЕ: данный метод работает в BETA-режиме, некоторые ключевые слова могут быть изменены в следующих релизах
    $detect->is('Chrome')
    $detect->is('iOS')
    $detect->is('UC Browser')
    // [...]
    
    // Имитируем устройства, используя setUserAgent():
    $userAgents = array(
    'Mozilla/5.0 (Linux; Android 4.0.4; Desire HD Build/IMM76D) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.166 Mobile Safari/535.19',
    'BlackBerry7100i/4.1.0 Profile/MIDP-2.0 Configuration/CLDC-1.1 VendorID/103',
    // [...]
    );
    foreach($userAgents as $userAgent){
    
     $detect->setUserAgent($userAgent);
     $isMobile = $detect->isMobile();
     $isTablet = $detect->isTablet();
    }
    
    // Извлекаем версию version() устройства.
    // ВНИМАНИЕ: данный метод работает в BETA-режиме, некоторые ключевые слова могут быть изменены в следующих релизах
    $detect->version('iPad'); // 4.3 (float)
    $detect->version('iPhone') // 3.1 (float)
    $detect->version('Android'); // 2.1 (float)
    $detect->version('Opera Mini'); // 5.0 (float)
    // [...]

    Общие возможности

    • isMobile() — определяет является ли устройство мобильным
    • isTablet() — определяет является ли устройство планшетом

    Возможности библиотеки

    Для проверки мы можем заюзать следующие методы:

    Определение телефона

    • isiPhone()
    • isBlackBerry()
    • isHTC()
    • isNexus()
    • isDellStreak()
    • isMotorola()
    • isSamsung()
    • isSony()
    • isAsus()
    • isPalm()
    • isGenericPhone()

    Определение планшета

    • isBlackBerryTablet()
    • isiPad()
    • isKindle()
    • isSamsungTablet()
    • isHTCtablet()
    • isMotorolaTablet()
    • isAsusTablet()
    • isNookTablet()
    • isAcerTablet()
    • isYarvikTablet()
    • isGenericTablet()

    Определение операционной системы

    • isAndroidOS()
    • isBlackBerryOS()
    • isPalmOS()
    • isSymbianOS()
    • isWindowsMobileOS()
    • isiOS()
    • isFlashLiteOS()
    • isJavaOS()
    • isNokiaOS()
    • iswebOS()
    • isbadaOS()
    • isBREWOS()

    Определение мобильного браузера

    • isChrome()
    • isDolfin()
    • isOpera()
    • isSkyfire()
    • isIE()
    • isFirefox()
    • isBolt()
    • isTeaShark()
    • isBlazer()
    • isSafari()
    • isMidori()
    • isGenericBrowser()

Прокомментировать

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>