Сегмент інтернет-користувачів з мобільними пристроями продовжує зростати, і це пов’язано в першу чергу з процесом «насичення» ринку мобільними пристроями по всьому світу. Практично кожне таке пристрій здатний підключатися в мережі інтернет, а значить неминуче стає частиною нього. Таким чином, на кожен інтернет-ресурс доводиться якась частка відвідувачів з мобільних пристроїв. Визначення пристрою з якого зайшов користувач залишається актуальною темою. Приклад реалізації визначення мобільного пристрою раніше вже розглядали в нашому блозі, у цьому пості ми розглянемо інше рішення для цієї ж задачі.

Існує такий клас під назвою Mobile Detect, визначення пристрої так само відбувається по HTTP заголовка User-Agent, проект опублікували на гітхабі. Зручність в тому, що його доопрацьовують, з появою нових пристроїв, а так само в ньому реалізовані зручні методи для роботи з класом.

Розглянемо невеликий приклад його використання:

// підключаємо файл класу
require_once ‘Mobile_Detect.php’;
// створюємо об’єкт класу
$detect = new Mobile_Detect;
// Визначаємо всі мобільні пристрої
if ($detect->isMobile()){
}
// Визначаємо всі планшетні пристрої
if($detect->isTablet()){
}
// Визначаємо всі мобільні пристрої крім планшетів
if($detect->isMobile() && !$detect->isTablet()){
}
// Методи для визначення специфічних платформ
if($detect->isiOS()){
}
if($detect->isAndroidOS()){
}
// Альтернативний метод is() для перевірки специфічних властивостей
// Увага: даний метод знаходиться на стадії БЕТА-тестування,
// і ключові параметри можливо будуть змінюватися
$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()
// Увага: даний метод знаходиться на стадії БЕТА-тестування,
// і ключові параметри можливо будуть змінюватися
$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)
// […]
Додав: htmaker, 05.08.2015 р.
(2 голосів, середній: 4,00 з 5)

Завантаження…

Діліться з друзями:

См. також:


Пісочниця для PHP
Рубрика: PHP, Інструменти

Конфіг файли
Рубрика: PHP

Установка XCache в Linux CentOS
Рубрика: Linux, PHP

Використання SOAP в PHP
Рубрика: PHP

Встановлення PHP Soap на CentOS
Рубрика: Linux, PHP

Обсяг даних в зручному форматі на PHP
Рубрика: PHP

Транслітерація символів на PHP
Рубрика: PHP

Як перетворити URL-рядок в масив?
Рубрика: PHP

Добірка шаблонів регулярних виразів
Рубрика: PHP