我想在PHP(Codeingiter)中获取访问者的操作系统。我试过https://github.com/serbanghita/Mobile-Detect。它在70%的时间内为我工作。但它仍然没有准确检测。移动设备或平板电脑未检测到大量Android流量。在PHP中确定访问者的操作系统
回答
没有准确的方法通过php或任何其他服务器语言检测操作系统。
这种检测通常依赖于浏览器代理,但它可能是假的,大部分时间都没有足够的信息。
我做了1个实验。我把goo.gl网址,而不是我原来的网址。然后,我可以看到他们正在完美地跟踪操作系统,而无需使用Javascript –
我根据设备类型将访问者重定向到外部网站。这些网站也检测到这些设备类型为移动,而没有JavaScript代码。 –
您必须添加检查如iPad和其他人,我错过了其他设备......
$hua = filter_input(INPUT_SERVER, 'HTTP_USER_AGENT');
$os = 'I have no idea...';
if(preg_match('/android/i', $hua)) {
$os = 'Android';
} elseif (preg_match('/linux/i', $hua)) {
$os = 'Linux';
} elseif (preg_match('/iphone/i', $hua)) {
$os = 'iPhone';
} elseif (preg_match('/macintosh|mac os x/i', $hua)) {
$os = 'Mac';
} elseif (preg_match('/windows|win32/i', $hua)) {
$os = 'Windows';
}
echo $os;
亲爱的朋友,我之前和之后都用同样的方式来到图书馆。查看UA https://github.com/serbanghita/Mobile-Detect/issues/662。这一个是指Android操作系统。 –
它不可能通过.htaccess来完成。我必须通过php页面本身重定向它们。由于重定向网址是动态的 –
用户代理类库CI中提供的功能来进行你的任务。 您可以在这里找到更多关于它们的详细信息: User Agent Class Library
具体查找platform()函数来检测访问者的操作系统。
我在代码中使用了相同的...仍然通过传递......此外,这个库不是100%可信赖的。我可以看到这个图书馆没有正确地检测到bot流量。 –
- 1. 确定.vimrc中的操作系统
- 2. 如何从Lua脚本中确定系统的操作系统?
- 3. 准确确定PHP运行的操作系统类型
- 4. 访问Android操作系统设置
- 5. .htaccess:拒绝访问操作系统
- 6. Chrome操作系统USB /蓝牙访问
- 7. 访问Android操作系统根文件
- 8. 从CAPL访问操作系统功能
- 9. 与操作系统无关的文件系统访问
- 10. 确定客户端操作系统在PHP
- 11. 通过Silverlight确定操作系统
- 12. 无法确定操作系统
- 13. 确定操作系统是否为Mac
- 14. 确定从32位操作系统或64位操作系统C/C++应用
- 15. 在Windows操作系统中的pathos软件包操作系统
- 16. 如何在apache上获取访问者浏览器类型和操作系统
- 17. 3.0 Android操作系统2.2 Android操作系统问题
- 18. 如何在Windows操作系统中访问Undeletable目录/文件?
- 19. 确定系统(),pasthrus(),exec()操作在php中执行的时间长度
- 20. Java可以访问操作系统中的搜索文件系统功能吗?
- 21. 预定义为iPhone操作系统和Mac操作系统
- 22. 操作系统中
- 23. 该页面在操作系统中未正确重定向
- 24. 确定是否在MATLAB中运行x64或x86操作系统
- 25. 从VMWare中的客户操作系统访问主机IIS
- 26. 操作系统中的定时器
- 27. 在MSWin32操作系统上的条款:: ReadKey :: GetTermialSize操作系统
- 28. 操作系统
- 29. 确定Windows 7中操作系统的默认语言?
- 30. 确定C#中的操作系统和处理器类型
使用PHP或JavaScript,您可以看到访问者的用户代理。在PHP中,您可以执行以下操作:$ _SERVER ['HTTP_USER_AGENT']。 –
我试过一个图书馆也是这样做的。但没有得到... –