v2.5.2
Giriş yap

Php işletim sistemi öğrenme

egemennk1
1,244 defa görüntülendi

Merhaba, PHP ile kullanıcının kullandığı işletim sistemini nasıl algılayabilirim ?

Cevap yaz
Cevaplar (5)
bilinmez1i
1257 gün önce

Merhaba internette biraz gezinerek bir kod buldum işletim sistemi ve Tarayıcıyı bulma hakkında iki adet fonksiyon var bunları aşağıdan alıp fonksiyona değer girmeden işletim sistemi veya browser bilgilerine ulaşabilirsin.

İşletim sistemi için:

function OsAsk() {
    $tespit=$_SERVER['HTTP_USER_AGENT'];
    if(stristr($tespit,"Windows 95")) { $os="Windows 95"; }
    elseif(stristr($tespit,"Windows 98")) { $os="Windows 98"; }
    elseif(stristr($tespit,"Windows NT 5.0")) { $os="Windows 2000"; }
    elseif(stristr($tespit,"Windows NT 5.1")) { $os="Windows XP"; }
    elseif(stristr($tespit,"Windows NT 6.0")) { $os="Windows Vista"; }
    elseif(stristr($tespit,"Windows NT 6.1")) { $os="Windows 7"; }
    elseif(stristr($tespit,"Windows NT 6.2")) { $os="Windows 8"; }
    elseif(stristr($tespit,"Windows NT 10.0")) { $os="Windows 10"; }
    /*
    Buraya Windows 11 sürümü çıktığında windows 11'in NT sürümünü öğrenerek elseif kısmını ona göre ayarlaman gerek 
    aksi takdirde Bilinmiyor değeri alacaktır.
    Örnek:
    elseif(stristr($tespit,"Windows NT 11.0")) { $os="Windows 11"; }
    */
    elseif(stristr($tespit,"Mac")) { $os="Mac"; }
    elseif(stristr($tespit,"Linux")) { $os="Linux"; }
    else {$os="Bilinmiyor ?";}
    return $os;
}

Tarayıcı için:

function BrowserAsk() {
    $tespit2=$_SERVER['HTTP_USER_AGENT'];
    if(stristr($tespit2,"MSIE")) { $tarayici="Internet Explorer"; }
    elseif(stristr($tespit2,"Firefox")) { $tarayici="Mozilla Firefox"; }
    elseif(stristr($tespit2,"YaBrowser")) { $tarayici="Yandex Browser"; }
    elseif(stristr($tespit2,"Chrome")) { $tarayici="Google Chrome"; }
    elseif(stristr($tespit2,"Safari")) { $tarayici="Safari"; }
    elseif(stristr($tespit2,"Opera")) { $tarayici="Opera"; }
    else {$tarayici="Bilinmiyor ?";}
    return $tarayici;
}

İyi Günler. iyi çalışmalar dilerim :)

scorpix
899 gün önce

@fazilmertvural adam kullanıcının işletim sistemini öğrenmek istiyor. Sen ise sunucunun Phpinfo dan ayrılma işletim sistemi bilgisini görebileceği kod atıyorsun. bilmiyorsun madem kafa karıştırma öğrenecek olanlara. gayette güzel cevap atmış arkadaşlarım tebrikler

fazilmertvural
1252 gün önce

Merhaba satırlarca kod yazmanıza gerek yok çünkü bunun zaten bir PHP fonksiyonu var

<?php echo php_uname(); ?>

yazdırarak deneyebilirsiniz, iyi günler.

gokcin
1257 gün önce
$useragent = $_SERVER['HTTP_USER_AGENT'] . "<br/>";
function get_os_name($useragent){

	global $useragent;
	$ostypes = array(
		'Win311' => 'Win16',
		'Win95' => '(Windows 95)|(Win95)|(Windows_95)',
		'WinME' => '(Windows 98)|(Win 9x 4.90)|(Windows ME)',
		'Windows 98' => '(Windows 98)|(Win98)',
		'Windows 2000' => '(Windows NT 5.0)|(Windows 2000)',
		'Windows XP' => '(Windows NT 5.1)|(Windows XP)',
		'WinServer2003' => '(Windows NT 5.2)',
		'WinVista' => '(Windows NT 6.0)',
		'Windows 7' => '(Windows NT 6.1)',
		'Windows 8' => '(Windows NT 6.2)',
		'WinNT' => '(Windows NT 4.0)|(WinNT4.0)|(WinNT)|(Windows NT)',
		'OpenBSD' => 'OpenBSD',
		'SunOS' => 'SunOS',
		'Ubuntu' => 'Ubuntu',
		'Android' => 'Android',
		'Linux' => '(Linux)|(X11)',
		'iPhone' => 'iPhone',
		'iPad' => 'iPad',
		'MacOS' => '(Mac_PowerPC)|(Macintosh)',
		'QNX' => 'QNX',
		'BeOS' => 'BeOS',
		'OS2' => 'OS/2',
		'SearchBot' => '(nuhk)|(Googlebot)|(Yammybot)|(Openbot)|(Slurp)|(MSNBot)|(Ask Jeeves/Teoma)|(ia_archiver)'
	);

	$useragent = strtolower($useragent ? $useragent : $_SERVER['HTTP_USER_AGENT']);
	foreach ($ostypes as $os => $pattern){
		if (preg_match('/' . $pattern . '/i', $useragent))
			return $os;
		
	}
	return 'Unknown';
}

$your_os = get_os_name($useragent);
echo "<p align='center'><font style='color:green;'><b>Senin Kullandığın İşletim Sistemi :  <font style='color:red;'>".strtoupper($your_os)."</font></b></font></p>";

smack
1257 gün önce

$_SERVER['HTTP_USER_AGENT']

işinizi görmüyor mu?