PHP应该能判断用户是否用手机访问网站吧,记得早些年,在QQ空间的留言板上还出现了该留言来自于手机的提示呢,虽然QQ空间不是用PHP开发的。于是,今天来网络上搜索了一番。找到了一个貌似还可以的方法。参考地址: php如何判断用户通过手机wap访问还是电脑直接访问
手机需通过代理服务器来访问网站,http头信息里一般会包含一个VIA的信息,不太懂具体是什么含义,大概都是通信用的。于是我建了一个脚本
测试下,<?php echo $_SERVER['HTTP_VIA']
?>,用火狐,IE打开什么也没有。上传到网上,用我的手机访问了一下,有如下信息:HTTP/1.1
ZJHZ-PS-WAP3-GW305(infox-WISG, Huawei
Technologies)。那就按照参考文章的说法,如果获取到了HTTP头信息中的VIA并且含WAP,说明是手机访问。当然对那些头信息里没有发送VIA的手机就无效了。
这样就写了一个函数来封装一下,以方便使用。代码如下:
这样就写了一个函数来封装一下,以方便使用。代码如下:
/*
* 功能: 判断是否是手机访问
* 参数: 无
* 返回值: 返回1为是手机访问,返回0时为不是
*/
function is_wap() {
$http_via = isset($_SERVER['HTTP_VIA']) ? strtolower($_SERVER['HTTP_VIA']) : '';
return !empty($http_via) && strstr($http_via, 'wap') ? 1 : 0;
}
* 功能: 判断是否是手机访问
* 参数: 无
* 返回值: 返回1为是手机访问,返回0时为不是
*/
function is_wap() {
$http_via = isset($_SERVER['HTTP_VIA']) ? strtolower($_SERVER['HTTP_VIA']) : '';
return !empty($http_via) && strstr($http_via, 'wap') ? 1 : 0;
}