我试图用PHP(Codeingiter)获取访问者的操作系统。我试过了https://github.com/serbanghita/Mobile-Detect。它有70%的时间适合我。但它仍然无法准确检测。未检测到大量Android流量为移动设备或平板电脑。
答案 0 :(得分:3)
没有准确的方法可以通过php或任何其他服务器语言检测操作系统。
这种检测通常依赖于浏览器代理,但它可以伪造,大部分时间都没有信息。
答案 1 :(得分:1)
您必须为其他设备添加支票,例如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;
答案 2 :(得分:0)
CodeIgniter中的用户代理类库提供执行任务的功能。 您可以在此处找到有关它们的更多详情: User Agent Class Library
专门寻找用于检测访问者操作系统的platform()函数。