>백엔드 개발 >PHP 튜토리얼 >PHP를 사용하여 사용자의 운영 체제를 어떻게 확인할 수 있습니까?

PHP를 사용하여 사용자의 운영 체제를 어떻게 확인할 수 있습니까?

Barbara Streisand
Barbara Streisand원래의
2024-12-07 20:51:15892검색

How Can I Determine a User's Operating System Using PHP?

PHP를 사용하여 운영 체제 정보를 얻으려면 어떻게 해야 합니까?

문제:

thismachine.info와 같은 웹사이트에서는 자세한 정보를 제공합니다. 사용자의 운영 체제에 대한 정보. 사용자는 이것이 어떻게 수행되는지 궁금해합니다. 많은 사람들은 PHP를 사용하여 이러한 정보를 얻는 방법을 잘 모릅니다.

사용자 에이전트 조사

사용자 에이전트 문자열에는 브라우저에 대한 풍부한 정보가 포함되는 경우가 많습니다. 그러나 이 정보가 운영체제를 결정하는 데에도 사용되는지 여부는 불분명합니다. 그렇지 않다면 어떤 잠재적인 소스에서 이 정보를 제공할 수 있습니까?

운영 체제 식별

아래 PHP 코드는 thismachine.info와 같은 웹사이트가 운영 체제를 결정하는 방법에 대한 통찰력을 제공합니다. 사용되고 있습니다. 정규식을 활용하여 사용자 에이전트(예: Windows NT 5.1) 내의 운영 체제 모델을 일치시킵니다.

function getOS() {
    global $user_agent;

    $os_platform  = "Unknown OS Platform";

    $os_array     = array(
                          '/windows nt 10/i'      =>  'Windows 10',
                          '/windows nt 6.3/i'     =>  'Windows 8.1',
                          '/windows nt 6.2/i'     =>  'Windows 8',
                          '/windows nt 6.1/i'     =>  'Windows 7',
                          '/windows nt 6.0/i'     =>  'Windows Vista',
                          '/windows nt 5.2/i'     =>  'Windows Server 2003/XP x64',
                          '/windows nt 5.1/i'     =>  'Windows XP',
                          '/windows xp/i'         =>  'Windows XP',
                          '/windows nt 5.0/i'     =>  'Windows 2000',
                          '/windows me/i'         =>  'Windows ME',
                          '/win98/i'              =>  'Windows 98',
                          '/win95/i'              =>  'Windows 95',
                          '/win16/i'              =>  'Windows 3.11',
                          '/macintosh|mac os x/i' =>  'Mac OS X',
                          '/mac_powerpc/i'        =>  'Mac OS 9',
                          '/linux/i'              =>  'Linux',
                          '/ubuntu/i'             =>  'Ubuntu',
                          '/iphone/i'             =>  'iPhone',
                          '/ipod/i'               =>  'iPod',
                          '/ipad/i'               =>  'iPad',
                          '/android/i'            =>  'Android',
                          '/blackberry/i'         =>  'BlackBerry',
                          '/webos/i'              =>  'Mobile'
                    );

    foreach ($os_array as $regex => $value)
        if (preg_match($regex, $user_agent))
            $os_platform = $value;

    return $os_platform;
}

브라우저 결정

마찬가지로, 아래 코드는 정규식을 사용하여 사용자를 식별합니다. browser.

function getBrowser() {

    global $user_agent;

    $browser        = "Unknown Browser";

    $browser_array = array(
                            '/msie/i'      => 'Internet Explorer',
                            '/firefox/i'   => 'Firefox',
                            '/safari/i'    => 'Safari',
                            '/chrome/i'    => 'Chrome',
                            '/edge/i'      => 'Edge',
                            '/opera/i'     => 'Opera',
                            '/netscape/i'  => 'Netscape',
                            '/maxthon/i'   => 'Maxthon',
                            '/konqueror/i' => 'Konqueror',
                            '/mobile/i'    => 'Handheld Browser'
                     );

    foreach ($browser_array as $regex => $value)
        if (preg_match($regex, $user_agent))
            $browser = $value;

    return $browser;
}

결론

제공된 PHP 코드는 PHP를 사용하여 사용자의 운영 체제를 확인하는 방법에 대한 초기 쿼리에 대한 솔루션을 제공합니다. 사용자 에이전트 문자열을 분석하여 OS를 대략적으로 추정할 수 있습니다. 이는 정확한 과학이 아니며 제공된 결과가 항상 정확하지 않을 수도 있다는 점은 주목할 가치가 있습니다.

위 내용은 PHP를 사용하여 사용자의 운영 체제를 어떻게 확인할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.