Clases y Objetos de PHPLenguaje PHPPOO orientada a objetos

Clase PHP para detectar dispositivos móviles

Clase PHP para detectar dispositivos móviles. En este artículo vamos a implementar una clase PHP para detectar el trabajo proveniente de móviles. Sin más preámbulos les presento «Mobile Detect» es una clase ligera de PHP que se utiliza para detectar trafico proveniente de dispositivos móviles (incluidas tabletas y celulares). Utiliza la cadena «User-Agent» combinada con encabezados HTTP específicos para lograr una detección eficiente del entorno móvil.

Este potente script desarrollado con el lenguaje más popular, como parte del movimiento RESS (Responsive Web Design with Server-Side Component) por sus siglas en Ingles.

Puede encontrar más información sobre el tema leyendo estos artículos: Mejore el soporte móvil con el diseño receptivo mejorado en el lado del servidor y RESS: Diseño receptivo + Componentes del lado del servidor.

Ahora ustedes pueden implementar este interesante script en sus páginas, para cualquier uso que quieran darle. Sin embargo, puede beneficiarse de Mobile Detect utilizando cualquiera de los complementos de terceros disponibles para múltiples sistemas de gestión de contenidos y entre los principales tenemos:

  1. WordPress
  2. Drupal
  3. Joomla
  4. Magento
  5. etc.

En la parte final de este artículo dejaremos los vínculos para que descarguen el código fuente completa y una vista previa del mencionado script.

Clase PHP para detectar dispositivos móviles

Veamos un ejemplo:

    // Include and instantiate the class.
    require_once 'Mobile_Detect.php';
    $detect = new Mobile_Detect;
     
    // Any mobile device (phones or tablets).
    if ( $detect->isMobile() ) {
     
    }
     
    // Any tablet device.
    if( $detect->isTablet() ){
     
    }
     
    // Exclude tablets.
    if( $detect->isMobile() && !$detect->isTablet() ){
     
    }
     
    // Check for a specific platform with the help of the magic methods:
    if( $detect->isiOS() ){
     
    }
     
    if( $detect->isAndroidOS() ){
     
    }
     
    // Alternative method is() for checking specific properties.
    // WARNING: this method is in BETA, some keyword properties will change in the future.
    $detect->is('Chrome')
    $detect->is('iOS')
    $detect->is('UC Browser')
    // [...]
     
    // Batch mode using 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();
      // Use the force however you want.
     
    }
     
    // Get the version() of components.
    // WARNING: this method is in BETA, some keyword properties will change in the future.
    $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)
    // [...]
Clase PHP para detectar dispositivos móviles
Clase PHP para detectar dispositivos móviles

Una solución muy interesante para trabajar con dispositivos móviles, si bien, podemos trabajas con “medias queries” esta sería una gran solución para redirigir el trafico proveniente de los móviles, esta gran clase proviene de mobiledetect.net si deseas puedes descargar e implementar en sus sitios web.

Ver Demo

Descargar codigo fuente de esta clase php

Descargar Clase PHP

 

Nestor Tapia

Bloggero, amante de la programación PHP, innovador y me fascina compartir información. Desde que conocí el entorno informatico y el internet me llamó la atención la programación, Por tal motivo he creado mi blog BAULPHP.COM para compartir mis experiencias con todos ustedes. ¡Gracias por leerme!.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba