Агент

PHP парсер юзер агента с поддержкой Laravel, работающий на базе библиотеки Mobile Detect.

Установка

Установка через composer:

composer require jenssegers/agent

Совместимость с Laravel

Подключение сервиса в app/config/app.php:

Jenssegers\Agent\AgentServiceProvider::class,

Создание алиаса app/config/app.php:

'Agent' => Jenssegers\Agent\Facades\Agent::class,

Работа с библиотекой

Для начала необходимо создать объект Agent:

use Jenssegers\Agent\Agent;

$agent = new Agent();

Если вам необходимо распарсить юзер агента, то следует воспользоваться методами setUserAgent и setHttpHeaders:

$agent->setUserAgent('Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/537.13+ (KHTML, like Gecko) Version/5.1.7 Safari/534.57.2');
$agent->setHttpHeaders($headers);

Все методы библиотеки Mobile Detect можно увидеть на странице https://github.com/serbanghita/Mobile-Detect/wiki/Code-examples

Is?

Проверка операционной системы.

$agent->is('Windows');
$agent->is('Firefox');
$agent->is('iPhone');
$agent->is('OS X');

Магические методы

Магические методы, выполняющие те же задачи, что и метод is():

$agent->isAndroidOS();
$agent->isNexus();
$agent->isSafari();

Детектор мобильных платформ

Является ли устройство мобильным:

$agent->isMobile();
$agent->isTablet();

Определение юзер агента

Определение юзер агента, используя регулярное выражение:

$agent->match('regexp');

Дополнительные возможности

Поддержка языков

Получение списка поддерживаемых языков. Пример:

$languages = $agent->languages();
// ['nl-nl', 'nl', 'en-us', 'en']

Название устройства

Получение названия устройства. (iPhone, Nexus, AsusTablet, ...)

$device = $agent->device();

Название операционной системы

Получение операционной системы. (Ubuntu, Windows, OS X, ...)

$platform = $agent->platform();

Название браузера

Получение названия браузера. (Chrome, IE, Safari, Firefox, ...)

$browser = $agent->browser();

Проверка на тип устройства: ПК

Определение, что пользователь использует ПК.

$agent->isDesktop();

Проверка на тип устройства: телефон

Определение, что тип устройства — телефон.

$agent->isPhone();

Проверка на тип устройства: бот

Проверяем является ли пользователь ботом. Используется библиотека jaybizzle/crawler-detect.

$agent->isRobot();

Имя бота

Получение имени бота.

$robot = $agent->robot();

Версия браузера/платформы

В MobileDetect есть метод version, с помощью которого можно определить версию браузера или используемой платформы:

$browser = $agent->browser();
$version = $agent->version($browser);

$platform = $agent->platform();
$version = $agent->version($platform);

Данный метод работает в beta-режиме.

Данный урок подготовлен для вас командой сайта ruseller.com
Источник урока: https://github.com/jenssegers/agent
Перевел: Станислав Протасевич
Урок создан: 15 Мая 2017
Просмотров: 12728
Правила перепечатки


5 последних уроков рубрики "PHP"

  • Фильтрация данных с помощью zend-filter

    Когда речь идёт о безопасности веб-сайта, то фраза "фильтруйте всё, экранируйте всё" всегда будет актуальна. Сегодня поговорим о фильтрации данных.

  • Контекстное экранирование с помощью zend-escaper

    Обеспечение безопасности веб-сайта — это не только защита от SQL инъекций, но и протекция от межсайтового скриптинга (XSS), межсайтовой подделки запросов (CSRF) и от других видов атак. В частности, вам нужно очень осторожно подходить к формированию HTML, CSS и JavaScript кода.

  • Подключение Zend модулей к Expressive

    Expressive 2 поддерживает возможность подключения других ZF компонент по специальной схеме. Не всем нравится данное решение. В этой статье мы расскажем как улучшили процесс подключение нескольких модулей.

  • Совет: отправка информации в Google Analytics через API

    Предположим, что вам необходимо отправить какую-то информацию в Google Analytics из серверного скрипта. Как это сделать. Ответ в этой заметке.

  • Подборка PHP песочниц

    Подборка из нескольких видов PHP песочниц. На некоторых вы в режиме online сможете потестить свой код, но есть так же решения, которые можно внедрить на свой сайт.

^ Наверх ^