Maison >développement back-end >tutoriel php >Comment puis-je détecter le système d'exploitation de l'utilisateur à l'aide de PHP ?

Comment puis-je détecter le système d'exploitation de l'utilisateur à l'aide de PHP ?

Patricia Arquette
Patricia Arquetteoriginal
2024-12-08 00:11:16321parcourir

How Can I Detect the User's Operating System Using PHP?

Obtenir des informations sur le système d'exploitation

En PHP, vous pouvez utiliser la fonction get_browser() pour récupérer des informations sur le navigateur et le système d'exploitation de l'utilisateur. La fonction renvoie un tableau contenant les informations suivantes :

  • browser : Le nom du navigateur de l'utilisateur, tel que "Chrome" ou "Firefox".
  • version : La version du navigateur de l'utilisateur, tel que "10.0" ou "52.0".
  • plateforme : la plate-forme du système d'exploitation de l'utilisateur, telle que "Windows" ou "Linux".
  • javascript : une valeur booléenne indiquant si JavaScript est activé dans le navigateur de l'utilisateur.

Pour récupérer les informations sur le système d'exploitation de l'utilisateur, vous pouvez utiliser le Élément platform du tableau renvoyé par la fonction get_browser(). Par exemple :

$browser = get_browser();
echo $browser['platform'];

Sortie :

Windows

Exemple de code :

<?php

// Get user agent from header
$userAgent = $_SERVER['HTTP_USER_AGENT'];

// Sniff the operating system
$os = null;
if (preg_match('/windows nt 10/i', $userAgent)) {
    $os = 'Windows 10';
} elseif (preg_match('/windows nt 6.3/i', $userAgent)) {
    $os = 'Windows 8.1';
} elseif (preg_match('/windows nt 6.2/i', $userAgent)) {
    $os = 'Windows 8';
} elseif (preg_match('/windows nt 6.1/i', $userAgent)) {
    $os = 'Windows 7';
} elseif (preg_match('/windows nt 6.0/i', $userAgent)) {
    $os = 'Windows Vista';
} elseif (preg_match('/windows nt 5.2/i', $userAgent)) {
    $os = 'Windows XP x64';
} elseif (preg_match('/windows nt 5.1/i', $userAgent)) {
    $os = 'Windows XP';
} elseif (preg_match('/windows xp/i', $userAgent)) {
    $os = 'Windows XP';
} elseif (preg_match('/windows nt 5.0/i', $userAgent)) {
    $os = 'Windows 2000';
} elseif (preg_match('/windows me/i', $userAgent)) {
    $os = 'Windows ME';
} elseif (preg_match('/win98/i', $userAgent)) {
    $os = 'Windows 98';
} elseif (preg_match('/win95/i', $userAgent)) {
    $os = 'Windows 95';
} elseif (preg_match('/win16/i', $userAgent)) {
    $os = 'Windows 3.11';
} elseif (preg_match('/macintosh|mac os x/i', $userAgent)) {
    $os = 'Mac OS X';
} elseif (preg_match('/mac_powerpc/i', $userAgent)) {
    $os = 'Mac OS 9';
} elseif (preg_match('/linux/i', $userAgent)) {
    $os = 'Linux';
} elseif (preg_match('/ubuntu/i', $userAgent)) {
    $os = 'Ubuntu';
} elseif (preg_match('/iphone/i', $userAgent)) {
    $os = 'iPhone';
} elseif (preg_match('/ipod/i', $userAgent)) {
    $os = 'iPod';
} elseif (preg_match('/ipad/i', $userAgent)) {
    $os = 'iPad';
} elseif (preg_match('/android/i', $userAgent)) {
    $os = 'Android';
} elseif (preg_match('/blackberry/i', $userAgent)) {
    $os = 'BlackBerry';
} elseif (preg_match('/webos/i', $userAgent)) {
    $os = 'Mobile';
} else {
    $os = 'Unknown';
}

// Print the operating system
echo $os;

?>

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn