PHP自動識別當前使用移動終端
雖然現(xiàn)在利用jquery可以準確地判斷出當前使用的是那種客戶端,但是有時候根據(jù)功能和需求,我們可能需要用php來判斷當前程序運行的環(huán)境,jquery在這里就不說了,這里直接講講php是怎么實現(xiàn)的,希望對大家有所幫助。
我們首先來判斷當前運行環(huán)境是pc(電腦端)還是sp(手機,ipad端)
class self_test {
const PC = 'pc';
const SP = 'sp';
private $_splist = array('iPhone','Android','iPod','iPad','Tizen');//設置經(jīng)常使用的sp終端,暫時常用的sp端就這幾種,如果有的話大家也可以增加
private $terminal;
public function __construct(){
$this->setTerminal();//通過setTerminal()方法獲取到$terminal變量的值
}
/*
* function setTerminal()
* 獲取終端信息
* @return string
*/
private function setTerminal(){
$isSp = false;
foreach($this->_splist as $spname){
if (strstr($_SERVER['HTTP_USER_AGENT'], $spname)) {
$isSp = true;
break;
}
}
return $this->terminal = ($isSp) ? self::SP : self::PC;
}
/*
* function PC_SP()
* 輸出終端信息
* @return string
*/
public function PC_SP(){
return $this->terminal;
}
}
$str = new self_test();
echo $str->PC_SP();//輸出目前客戶使用的是PC還是SP
2.準確判斷當前的運行環(huán)境并輸出客戶端環(huán)境
class self_test {
const PC = 'pc';
const SP = 'sp';
private $_splist = array('iPhone','Android','iPod','iPad','Tizen');//設置經(jīng)常使用的sp終端,暫時常用的sp端就這幾種,如果有的話大家也可以增加
private $environment;
public function __construct(){
$this->setEnvironment();//通過setEnvironment()方法獲取到$terminal變量的值
}
/*
* function environment()
* 輸出終端信息
* @return string
*/
public function environment(){
return $this->environment;
}
/*
* function setEnvironment()
* 獲取終端信息
* @return string
*/
private function setEnvironment(){
$isSp = self::PC;//如果是PC端,就不需要判斷是安卓還是apple了,所以只輸出pc就可以
foreach($this->_splist as $spname){
if (strstr($_SERVER['HTTP_USER_AGENT'], $spname)) {
$isSp = $spname;
break;
}
}
return $this->environment = $isSp;
}
}
$str = new self_test();
echo $str->environment();//輸出目前客戶使用的終端
以上代碼都是自己運行成功之后貼出來分享的內(nèi)容,所以大家可以在自己的環(huán)境下調(diào)試。
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
php通過array_merge()函數(shù)合并兩個數(shù)組的方法
這篇文章主要介紹了php通過array_merge()函數(shù)合并兩個數(shù)組的方法,實例分析了php中array_merge()函數(shù)合并數(shù)組的使用技巧,需要的朋友可以參考下2015-03-03
thinkphp項目部署到Linux服務器上報錯“模板不存在”如何解決
一個項目部署到Linux服務器上去的時候,發(fā)現(xiàn)某些模板竟然會報錯說“模板不存在:/Application/Admin/....”,這篇文章就是介紹了thinkphp項目部署到Linux服務器上報錯“模板不存在”的解決方法,感興趣的小伙伴們可以參考一下2016-04-04

