Created
October 7, 2016 12:50
-
-
Save Balamir/4a19b3b0a4074ff113a08a92908302e2 to your computer and use it in GitHub Desktop.
PHP: get user os and browser information
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
/** | |
* Kullanicinin kullandigi isletim sistemi bilgisini alir. | |
* | |
* @since 2.0 | |
*/ | |
function getOS() { | |
$user_agent = $_SERVER['HTTP_USER_AGENT']; | |
$os_platform = "Bilinmeyen İşletim Sistemi"; | |
$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; | |
} | |
/** | |
* Kullanicinin kullandigi internet tarayici bilgisini alir. | |
* | |
* @since 2.0 | |
*/ | |
function getBrowser() { | |
$user_agent = $_SERVER['HTTP_USER_AGENT']; | |
$browser = "Bilinmeyen Tarayıcı"; | |
$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; | |
} | |
echo getOS() . " - " getBrowser(); |
Assalamualaikum, Hi @Balamir can it detect win 11?
Assalamualaikum, Hi @Balamir can it detect win 11?
Windows 11 falls under Windows 10 at this moment since both share the same NT version.
So I would just change "Windows 10" to "Windows 10/11"
When Windows 10 was released, the NT version was 10.0 to have the same NT version as the Windows version. Now we are with Windows 11 and the NT version is still 10.0
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
last line have to be
echo getOS() . " - " .getBrowser();