多语言展示
当前在线:1787今日阅读:103今日分享:49

php 如何在判断打开浏览器是pc端

php判断打开网页的浏览器是pc端可以通过php获取http协议的user--agent,然后借助于php中的正则表达式匹配函数preg_match来与手机端的浏览器信息特征进行匹配。
一、原理说明
2

在php中通过全局变量_SERVER['HTTP_USER_AGENT']就可以直接获取user-agent信息。夏惹建立一个ua.php的文件,然后写入如下代码。<歌针泰/font>

3

然后在电脑端访问,如下图所示,是pc端显示的信息。

4

用手机浏览器直接访问的效果如下图所示。对比pc端的信息你会发现,手机牌子、mobile、android等等都可以作为手机端浏览器的特点。这正是php用user-agent来判断是手机端还是pc端访问的方法。

5

php提供了preg_match函数来执行匹配正则表达式,其函数声明如下图所示。它的返回值是正则表达式匹配的次数,如果没有匹配则返回0,如果匹配了就会返回1,而且一旦匹配一次将不在进行继续匹配。

二、实例
1

首先自己可以从网或者自行组建一个相对完整的user-agent手机端信息的正则表达式表,如下图所示,保存到变量regex_match中,变量后面的.是进行合并,别看有多行,其实是一个变量 。

2

然后就可以直接用 preg_match函数将上面的正则表达式的变量和_SERVER['HTTP_USER_AGENT']进行匹配了。

3

整个的代码如下,将其保存为t.php。

4

为了以后方便使用,将其整合成一个php函数,为了方便测试,通过函数判断会加载不同的html页,其中mo.html是手机端。它只是显示这是手机端的提示代码如下:this is mobile pc.html用于显示pc端的提示。 this is pc

5

接下来用电脑端访问t.php,它会自动定向到pc.html中。

6

在手机端访问t.php,它会自动定向到mo.html中。