2009-09-28 59 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.)