php中如何判断iphone版本的uc浏览器?
下面这个是能判断的,但是出现一个问题,就是ios版本的uc浏览器出现了一个极速模式,切换到了极速模式就判断不出来了。现在想单独判断uc浏览器下进行跳转。
$useragent = $_server['http_user_agent'];
if(strpos($useragent,iphone) || strpos($useragent,ipad) || strpos($useragent,ipod)){
header(location:http://www.baidu.com);
}else if(strpos($useragent,android)){
header(location:http://www.google.com);
}
------解决方案--------------------
echo $_server['http_user_agent'];
贴出结果
------解决方案--------------------
如版主,输入结果。 可以试下找 iuc 字符
------解决方案--------------------
很怀念的问题...几年前和你一样在思考类似的问题
判断iphone版的uc...大概意思是在做软件站或广告页面之类的吧...
不管是uc还是safari...要获取ua都不是百分百可以截取到的.
现在回忆不起来了,但有几个思路可能对你有帮助
1.部分版本uc浏览器在第一次访问和第二次访问的ip有所不同,一般认为是浏览器设置的问题,uc一般默认开启软件设置中的中转或web压缩等情况.safari或其他手机自带浏览器则不会有这问题.可使用跳转(不是页面301),是js的延迟跳转或wml中的延迟跳转.可以获取到不同的ip.你可以自己做试验.
2.uc浏览器大部分都默认开启代理等设置. 你所说的极速模式,估计也类似代理.访问后的ip和手机的cmwap或cmnet或wifi形式链接下的ip不一致(可用自带浏览器作比较),大部分为广东或北京等地区ip,记得以前推断是uc中转服务器的ip.你可以做个数据表记录下这些ip,如果是通过这些ip访问的,基本上都可判断为uc浏览器
3.通过ua来判断的精确度十分低,如果做开发的精确度要求较高,那么编写起来的逻辑也不能太简单.不止是ua.还可以通过http_x_network_info,http_x_up_calling_line_id,deviceid,http_x_up_subno,http_via等等
希望对你有帮助.
------解决方案--------------------
uc有代理的似乎。