About Me

My photo
I am adept web developer and designer. I studied engineering at IET Bhaddal, Ropar under Punjab Technical University. I develop my interest in web development at an early stage of Computer diploma. After working with top Mohali-based IT companies since 2005, I am currently working at Global Pueblo Solutions. In my free time, I love to play various sports, traveling with friends or family.

Wednesday, December 28, 2016

Function to get Operating System Information in PHP

Here is the function which you can use to get information about the operating system used by user agent.

echo returnOperatingSystemInfo();

/* Function to get operating system information */
    function returnOperatingSystemInfo() {
        $operatingsystems = array(
            'Open BSD' => 'OpenBSD',
            'Sun OS' => 'SunOS',
            'Linux' => '(Linux)|(X11)',
            'Macintosh' => '(Mac_PowerPC)|(Macintosh)',
            'QNX' => 'QNX',
            'BeOS' => 'BeOS',
            'OS/2' => 'OS/2',
            'Playstation' => '(playstation)|(PSP)',
            'Nintendo Wii' => '(Wii)',
            'Search Bot' => '(nuhk)|(Googlebot)|(Yammybot)|(Openbot)|(Slurp/cat)|(msnbot)|(ia_archiver)',       
            'iPhone' => '(iPhone)',
            'iPad' => '(iPad)',
            'Windows Phone' => '(Windows Phone)|(Windows CE)',
            'Android' => '(Android)',
            'BlackBerry' => '(BlackBerry)|(PlayBook)|(RIM Tablet)',
            'Windows 3.11' => 'Win16',
            'Windows 95' => '(Windows 95)|(Win95)|(Windows_95)',
            'Windows 98' => '(Windows 98)|(Win98)',
            'Windows 2000' => '(Windows NT 5.0)|(Windows 2000)',
            'Windows XP' => '(Windows NT 5.1)|(Windows XP)',
            'Windows 2003' => '(Windows NT 5.2)',
            'Windows Vista' => '(Windows NT 6.0)|(Windows Vista)',
            'Windows 7' => '(Windows NT 6.1)|(Windows 7)',
            'Windows 8' => '(Windows NT 8.0)|(Windows NT 8.1)|(Windows 8)|(Windows NT 6.3)|(Windows NT 6.2)',
            'Windows 10' => '(Windows NT 10.0)|(Windows 10)',
            'Windows NT 4.0' => '(Windows NT 4.0)|(WinNT4.0)|(WinNT)|(Windows NT)',
            'Windows ME' => 'Windows ME'
        );

        foreach ($operatingsystems as $operatingSystem => $pattern) {
            if (eregi($pattern, $_SERVER['HTTP_USER_AGENT'])) {
                return $operatingSystem;
            }
        }
        return 'Not Found Information';
    }


Cheers!

No comments:

Post a Comment