¿Cómo detectar un dispositivo móvil usando PHP?

A menudo nos parece importante detectar el navegador de nuestro usuario para ofrecer una mejor experiencia de visualización. Pocos sitios web son obligatorios para acceder desde una PC y no desde un móvil. Además, actúa como medida de precaución para que los usuarios descuidados rellenen formularios importantes desde una pantalla más pequeña como la del móvil.

Usando HTTP_USER_AGENT: Vamos a verificar qué tipo de navegador está usando el visitante. Para eso, verificamos la string de agente de usuario que el navegador envía como parte de la solicitud HTTP. Esta información se almacena en una variable. Las variables siempre comienzan con un signo de dólar en PHP.

Sintaxis:

$_SERVER['HTTP_USER_AGENT']

.

Aquí , $_SERVER es una variable especial de PHP reservada que contiene toda la información del servidor web. Se le conoce como superglobal . Estas variables especiales se introdujeron en PHP 4.1.0. A continuación, debemos leer el mensaje devuelto por HTTP_USER_AGENT para pasar el control al siguiente conjunto de instrucciones. Para fines de demostración, pondremos una declaración de eco «» para confirmar que se detecta un dispositivo móvil. Leeremos el mensaje devuelto de HTTP_USER_AGENT con la función preg_match() . Realiza una coincidencia de expresión regular.

Ejemplo: es fácil perderse en esta gran cantidad de expresiones regulares, pero es así para detectar todo tipo de navegador de cada sistema operativo móvil disponible en el mercado (también puede detectar dispositivos Kindle). Por ejemplo, (android|bb\d+|meego).+mobile|avantgo|bada verificará si el sistema operativo del dispositivo del usuario es Android o no. Si este fragmento se inserta en index.php del sitio web y se accede al sitio desde un dispositivo móvil, el navegador mostrará el mensaje como Navegador móvil detectado .

<?php
function isMobileDevice() {
    return preg_match("/(android|avantgo|blackberry|bolt|boost|cricket|docomo
|fone|hiptop|mini|mobi|palm|phone|pie|tablet|up\.browser|up\.link|webos|wos)/i"
, $_SERVER["HTTP_USER_AGENT"]);
}
if(isMobileDevice()){
    echo "Mobile Browser Detected";
}
else {
    echo "Mobile Browser Not Detected";
}
?>

Salida: Estamos accediendo desde una computadora portátil.

Mobile Browser Not Detected

Publicación traducida automáticamente

Artículo escrito por soumit1234 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

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