这篇文章主要为大家详细介绍了PHP自动识别当前使用移动终端,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
虽然现在利用jquery可以准确地判断出当前使用的是那种客户端,但是有时候根据功能和需求,我们可能需要用php来判断当前程序运行的环境,jquery在这里就不说了,这里直接讲讲php是怎么实现的,希望对大家有所帮助。
我们首先来判断当前运行环境是pc(电脑端)还是sp(手机,ipad端)
class self_test {
const PC = 'pc';
const SP = 'sp';
private $_splist = array('iPhone','Android','iPod','iPad','Tizen');//设置经常使用的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.准确判断当前的运行环境并输出客户端环境
class self_test {
const PC = 'pc';
const SP = 'sp';
private $_splist = array('iPhone','Android','iPod','iPad','Tizen');//设置经常使用的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();//输出目前客户使用的终端
以上代码都是自己运行成功之后贴出来分享的内容,所以大家可以在自己的环境下调试。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程学习网。
沃梦达教程
本文标题为:PHP自动识别当前使用移动终端
基础教程推荐
猜你喜欢
- laravel ORM关联关系中的 with和whereHas用法 2023-03-02
- PHP实现Redis单据锁以及防止并发重复写入 2022-10-12
- 在Laravel中实现使用AJAX动态刷新部分页面 2023-03-02
- PHP命名空间简单用法示例 2022-12-01
- thinkphp3.2.3框架动态切换多数据库的方法分析 2023-03-19
- 使用PHP开发留言板功能 2023-03-13
- PHP中的错误及其处理机制 2023-06-04
- PHP获取MySQL执行sql语句的查询时间方法 2022-11-09
- laravel 解决多库下的DB::transaction()事务失效问题 2023-03-08
- php array分组,PHP中array数组的分组排序 2022-08-01