سلام ،
در كد قبلي كه دادم
[php]$Chenge_hua['browsers'][0] = array ("Mozilla", "Opera","IE", "FireFox" ,"Netscape", "Safari","Seamonkey","Dillo","Navigator","Camino", "Epiphany","Galeon","Minefield","K-Meleon","Iceape","konqueror","flock","Chrome");[/php]كلمه اي بود كه جستجو مي شد و
[php]$Chenge_hua['browsers'][1] = array ("Mozilla", "Opera","Internet Explorer", "Mozilla FireFox" ,"Netscape", "Mozilla Safari","Seamonkey","Dillo","Netscape Navigator","Camino","Epiphany","Galeon","Minefield ","K-Meleon","Mozilla FireFox (( Debian ))","konqueror","flock","Google Chrome");[/php]متني بود كه جايگزين مي شد ولي توي اين كد دقيق همان كلمه جستجو شده جايگزين مي شود و به جز اون ورژن مرورگر هم تشخيص داده مي شود
[php]function chenge_http_user_agent()
{
$user_agent = "/".$_SERVER['HTTP_USER_AGENT'];
$browser = array ("Mozilla", "Opera","IE", "FireFox" ,"Netscape", "Safari","Seamonkey","Dillo","Navigator","Camino", "Epiphany","Galeon","Minefield","K-Meleon","Iceape","konqueror","flock","Chrome");
$os = array ("Windows","Mac","Linux","FreeBSD");
$_SERVER['HTTP_USER_AGENT'] = array( BROWSER=>"Unknown", OS=>"Unknown", BROWSER_VERSION=>"Unknown" , TEXT=> $_SERVER['HTTP_USER_AGENT']);
foreach ($browser as $parent)
{
$browser = strpos(strtoupper( $user_agent ),strtoupper($parent));
$version_str= $browser+ strlen($parent)+1;
$version = substr( $user_agent, $version_str, 1);
if ($browser)
{
$_SERVER['HTTP_USER_AGENT']['BROWSER'] = $parent;
$_SERVER['HTTP_USER_AGENT']['BROWSER_VERSION'] = $version;
}
}
foreach ($os as $val)
{
if ($os_strpos = strpos( strtoupper( $user_agent ), strtoupper( $val ) ) )
{
$_SERVER['HTTP_USER_AGENT']['OS'] = $val;
}
}
return true;
}
[/php][php]chenge_http_user_agent();
print_r( $_SERVER );
[/php]اگر به كد اول كد بالا رو هم اضافه كنيم خروجي ميشه :
کد:
Array
(
[HTTP_USER_AGENT] => Array
(
[TEXT] => Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9) Gecko/2008052906 Firefox/3.0 FirePHP/0.1.2
[BROWSER] => FireFox
[OS] => Windows
[BROWSER_VERSION] => 3
)
)
خدا حافظ . نظر و تشكر يادتون نره . :31::31: