Detectar dispositivos moviles con PHP

Actualizado el domingo, 19 junio, 2016

A la hora de realizar una página web responsive, no siempre es suficiente con emplear imágenes elásticas y cajas fluidas; también es importante filtrar la información que se envía desde el servidor. Por lo general, las condiciones en las que se visita una web desde un smart-phone no son las mismas que desde un ordenador. Existen varias maneras de detectar desde qué dispositivo se está conectando un usuario a una web, pero quizás sean las que emplean PHP las más interesantes, ya que, como corre del lado del servidor, podemos estar seguros de que funcionará siempre. Para este proceso no ayudara mucho Mobile-Detect.

Lo descargamos desde este github y lo subimos al server.
Incluimos la sentencia en nuestra web:

require_once ('Mobile_Detect.php');

Creamos una instancia:

$detect = new Mobile_Detect();

Recurrimos a los condicionales que se necesiten:

<?php
if ($detect->isMobile()) {
// Detecta si es un móvil
}
if ($detect->isTablet()) {
// Si es un tablet
}
if ($detect->isAndroidOS()) {
// Si es Android
}
if ($detect->isiOS()){
 //Si es iOS
}
?>

Un ejemplo, con un script que carga un carrusell:
<!DOCTYPE html>
<html>
<head>
<title></title>
<script>
###aquí código y librerías del carrusel
</script>
</head>
<body>
###aquí imágenes del carrusel
</body>
</html>

Le decimos que lo que hay entre las líneas 5 y 7, así como lo que hay en la línea 10, solo se cargue si el dispositivo no es un móvil.
<!DOCTYPE html>
<html>
<head>
<?php require_once ('Mobile_Detect.php');
$detect = new Mobile_Detect(); ?>
<title></title>
<?php if ($detect->isMobile()==false) { ?>
<script>
###aquí código y librerías del carrusel
</script>
<?php } ?>
</head>
<body>
<?php if ($detect->isMobile()==false) { ?>
###aquí imágenes del carrusel
<?php } ?>
</body>
</html>

 

Una respuesta

  1. Johna990
    19/01/2017

Agregar comentario