Pregunta

Estoy buscando desesperadamente un marco PHP 5 que funcione mejor para desarrollar sitios .mobi.

Una característica importante que debe contener es el reconocimiento del navegador para diferentes teléfonos, de modo que el sitio funcione correctamente en todo tipo de teléfonos.

¿Fue útil?

Solución

CakePHP, como parte del componente de Handler de requisito incorporado, verifica la cadena del agente de usuario en una gran lista de dispositivos conocidos y, por lo tanto, puede mostrar automáticamente diferentes contenidos a esos clientes.

Aquí está la lista con la que se compara:

iPhone, MIDP, Avantgo, BlackBerry, J2ME, Opera Mini, Docomo, Netfront, Nokia, Palmos, Palmsource, Portalmmm, Ruster, Reqwirelessweb, Sonyericsson, Symbian, UP.Browser, Windows CE, Xiino, Xiino

Incluso no vas con CakePHP, puedes echar un vistazo a la fuente de ese archivo para ver más sobre cómo maneja esas solicitudes.

Otros consejos

No he oído hablar de un marco PHP que se especialice en clientes móviles. Si yo fuera usted, no intentaría encontrar un marco especializado, pero simplemente definir sus necesidades en general y ver qué marco puede cubrirlas mejor. El reconocimiento de los diferentes clientes se puede integrar fácilmente en cualquier marco existente.

Codeigniter tiene una clase llamada Agente de usuario.

Sin embargo, es posible que deba crear su propia clase para navegadores móviles.

La clase de agente de usuario proporciona funciones que ayudan a identificar información sobre el navegador, el dispositivo móvil o el robot visitando su sitio. Además, puede obtener información de referencia, así como lenguaje e información compatible con el conjunto de caracteres.

Ejemplo: cuando se inicializa la clase de agente de usuario, intentará determinar si el agente de usuario que navega por su sitio es un navegador web, un dispositivo móvil o un robot. También recopilará la información de la plataforma si está disponible.

$this->load->library('user_agent');

if ($this->agent->is_browser())
{
    $agent = $this->agent->browser().' '.$this->agent->version();
}
elseif ($this->agent->is_robot())
{
    $agent = $this->agent->robot();
}
elseif ($this->agent->is_mobile())
{
    $agent = $this->agent->mobile();
}
else
{
    $agent = 'Unidentified User Agent';
}

echo $agent;

echo $this->agent->platform(); // Platform info (Windows, Linux, Mac, etc.)

Los navegadores móviles, como los navegadores de escritorio, tienen sus propios problemas y "necesidades especiales", por lo que sería una buena idea incluir un cheque para ver a qué navegador está generando, porque podría afectar mucho la salida.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top