2009-09-28 60 views
3

我正在拼命寻找最适合开发.mobi网站的PHP 5框架。开发.mobi网站的PHP框架

它应该包含的一个主要功能是针对不同手机的浏览器识别,以便该网站可以在所有类型的手机上正常工作?

回答

4

CakePHP中,作为其一部分内置RequestHandler部件,检查对已知装置的一个大的列表中的用户代理字符串,因此可以自动地显示不同的内容给这些客户端。

这是它比较对列表:

iPhone,MIDP,AvantGo的,黑莓,J2ME,Opera Mini的,DoCoMo公司,NF浏览器,诺基亚,PalmOS的PalmSource公司,portalmmm,普拉克,ReqwirelessWeb,索尼爱立信,塞班, UP.Browser,Windows CE的,Xiino

即使你不使用CakePHP去,你可以看看该文件的来源,进一步了解如何处理这些请求。

0

手机浏览器,如桌面浏览器,都有着自己的问题,“特殊需求”,所以这将是一个好主意,包括一个检查,看看你是输出到何种浏览器,因为它可以极大地影响输出。

2

我还没有听说过专门针对移动客户端的PHP框架。如果我是你,我不会试图找到一个专门的框架,但只需定义你的需求,看看哪个框架可以最好地覆盖他们。对不同客户的认可可以很容易地集成到任何现有的框架中。

2

Codeigniter有一个名为User Agent的类。

但是您可能需要创建自己的类的移动浏览器。

用户代理类提供了帮助识别关于浏览器,移动设备或机器人访问您的网站信息的功能。此外,您还可以获取引荐来源信息以及语言和受支持的字符集信息。

示例: 初始化用户代理类时,它将尝试确定浏览您站点的用户代理是Web浏览器,移动设备还是机器人。如果可用,它也会收集平台信息。

$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.)