Ejemplo de código fuente en PHP de un método para detectar la plataforma o sistema operativo con el que se visita una determinada web, mostrándola donde llamemos a ese método dentro de nuestra página web.
ÍNDICE
Descripción del ejemplo
La idea del ejemplo es recoger mediante $_SERVER[‘HTTP_USER_AGENT’] de php, el contenido de la cabecera User-Agent, una cadena que indica el agente de usuario empleado para acceder a la pagina. Como véis, lo primero que debéis hacer es pillar ese User-Agent del visitante, y después ya pues llamáis al método getPlatform() para que compruebe qué plataforma usa.
Código básico
<?php
// Inicio del Ejemplo
// *******************************************************************************
//Recogemos el user_agent del visitante
$user_agent = $_SERVER['HTTP_USER_AGENT'];
function getPlatform($user_agent) {
$plataformas = array(
'Windows 10' => 'Windows NT 10.0+',
'Windows 8.1' => 'Windows NT 6.3+',
'Windows 8' => 'Windows NT 6.2+',
'Windows 7' => 'Windows NT 6.1+',
'Windows Vista' => 'Windows NT 6.0+',
'Windows XP' => 'Windows NT 5.1+',
'Windows 2003' => 'Windows NT 5.2+',
'Windows' => 'Windows otros',
'iPhone' => 'iPhone',
'iPad' => 'iPad',
'Mac OS X' => '(Mac OS X+)|(CFNetwork+)',
'Mac otros' => 'Macintosh',
'Android' => 'Android',
'BlackBerry' => 'BlackBerry',
'Linux' => 'Linux',
);
foreach($plataformas as $plataforma=>$pattern){
if (preg_match('/(?i)'.$pattern.'/', $user_agent))
return $plataforma;
}
return 'Otras';
}
$SO = getPlatform($user_agent);
echo "La plataforma con la que estás visitando esta web es: ".$SO;
// Fin del Ejemplo
// *******************************************************************************
?>
Código avanzado
Nuestro compi Giovanny, nos dejó una ampliación del código1 que podéis ver en el siguiente link:
https://gist.github.com/giobeatle1794/bd6f47f83a708b217afdc320b358217b#file-os-detect-php
PD: Gracias por tu aporte Giovanny 😉
Demo del ejemplo
La plataforma con la que estás visitando esta web es: Otras