在PHP中确定访问者的操作系统

时间:2017-06-02 06:09:52

标签: php codeigniter user-agent os-detection

我试图用PHP(Codeingiter)获取访问者的操作系统。我试过了https://github.com/serbanghita/Mobile-Detect。它有70%的时间适合我。但它仍然无法准确检测。未检测到大量Android流量为移动设备或平板电脑。

3 个答案:

答案 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()函数。