âš ī¸ Warning âš ī¸ Deprecated Code! This video tutorial contains outdated code.
💡 If you wish to update it, any AI assistant will update the code for you in seconds.

Browser and Operating System Detect Array Script

Published : November 22, 2014   •   Last Edited : November 24, 2025   •   Author : Adam Khoury
Learn how to program arrays in PHP at a basic enough level to make an efficient browser sniffing script. We run loops over the arrays to perform the evaluations needed for finding a match in the user agent string and OS string.
<?php

// ----------------------------------------------------------------------------------------
// Obtain user agent which is a long string not meant for human reading
$agent = $_SERVER['HTTP_USER_AGENT']; 
// Get the user Browser now -----------------------------------------------------
// Create the Associative Array for the browsers we want to sniff out
$browserArray = array(
        'Windows Mobile' => 'IEMobile',
	'Android Mobile' => 'Android',
	'iPhone Mobile' => 'iPhone',
	'Firefox' => 'Firefox',
        'Google Chrome' => 'Chrome',
        'Internet Explorer' => 'MSIE',
        'Opera' => 'Opera',
        'Safari' => 'Safari'
); 
foreach ($browserArray as $k => $v) {
    if (preg_match("/$v/", $agent)) {
         break;
    }	else {
	 $k = "Browser Unknown";
    }
} 
$browser = $k;
// Get the user OS now ------------------------------------------------------------
// Create the Associative Array for the Operating Systems to sniff out
$osArray = array(
        'Windows 98' => '(Win98)|(Windows 98)',
        'Windows 2000' => '(Windows 2000)|(Windows NT 5.0)',
	'Windows ME' => 'Windows ME',
        'Windows XP' => '(Windows XP)|(Windows NT 5.1)',
        'Windows Vista' => 'Windows NT 6.0',
        'Windows 7' => '(Windows NT 6.1)|(Windows NT 7.0)',
        'Windows NT 4.0' => '(WinNT)|(Windows NT 4.0)|(WinNT4.0)|(Windows NT)',
	'Linux' => '(X11)|(Linux)',
	'Mac OS' => '(Mac_PowerPC)|(Macintosh)|(Mac OS)'
); 
foreach ($osArray as $k => $v) {
    if (preg_match("/$v/", $agent)) {
         break;
    }	else {
	 $k = "Unknown OS";
    }
} 
$os = $k;
// At this point you can do what you wish with both the OS and browser acquired
echo '<h1>PHP Tutorial : Get User Browser and Operating System Using Arrays</h1>';
echo $agent;
echo "<h2>You are using: <em>$browser - $os</em></h2>";
?>