| |
|
|
| | Никак не найду скрипт или данные для наиболее полного разбора $_SERVER['HTTP_USER_AGENT'] клиента на браузер и ОС. Имею в виду не те скрипты, которые гребут всё под одну гребёнку, скажем Linux и остальные nix-подобные, а определяют более точно. Или ещё скрипты для примера, которые определяют три браузера - IE, FF, Opera... Короче я думаю понятно о чём говорю. Так вот где взять возвращаемые данные юзер агента самых различных браузеров и ОС? Наилучший вариант был бы готовый код. | |
| |
|
|
| |
|
|
| |
для: NIK
(06.01.2007 в 17:59)
| | | Как то давно развлекался я и в итоге получилось следующее:
<?
function GetOS($string)
{
if(stripos($string,"windows ") != null ||
stripos($string,"winnt") != null ||
stripos($string,"win ") != null ||
preg_match("/win[0-9]{2}/i",$string))
{
preg_match("/(windows |winnt|win |win[0-9]{2})[^;)]*/i",$string,$regs);
return $regs[0];
}
if(stripos($string,"powerpc") != null ||
stripos($string,"macintosh") != null ||
stripos($string,"mac os") != null)
{
return "Macintosh";
}
if(stripos($string,"freebsd") != null ||
stripos($string,"linux") != null ||
stripos($string,"unix") != null ||
stripos($string,"lynx") != null)
{
preg_match("/(freebsd|linux|unix|lynx)[^;)-]*/i",$string,$regs);
return $regs[0];
}
return "Other";
}
function GetBrows($string)
{
if(stripos($string,"opera") !== false)
{
preg_match("/opera[^\"(\[]*/i",$string,$regs);
return str_replace("/"," ",$regs[0]);
}
if(stripos($string,"konqueror") !== false ||
stripos($string,"safari") !== false)
{
preg_match("/(konqueror|safari)[^;)]*/i",$string,$regs);
return str_replace("/"," ",$regs[0]);
}
if(stripos($string,"gecko") !== false)
{
preg_match("/rv:([^;)]*)/i",$string,$regs);
if(stripos($string,"firefox") !== false)
$str = " (Firefox)";
elseif(stripos($string,"netscape") !== false)
$str = " (Netscape)";
return "Mozilla$str $regs[1]";
}
if(stripos($string,"myie") !== false)
{
preg_match("/myie[^;)]*/i",$string,$regs);
return str_replace("/"," ",$regs[0]);
}
if(stripos($string,"MSIE") != null)
{
preg_match("/MSIE([^;)]*)/i",$string,$regs);
return "Internet Explorer $regs[1]";
}
return "Other";
}
?>
|
Громоздко, но зато довольно точно | |
| |
|
|
| |
|
|
| |
для: Евгений Петров
(06.01.2007 в 18:25)
| | | спасибо. Проверил на браузерах - без нареканий. Вот к сожалению на ОСях проверить возможности нет. Ты сам не видел это в действии ? | |
| |
|
|
| |
|
|
| |
для: NIK
(06.01.2007 в 21:03)
| | | Как то ставил на сайт но не долго он там был. В основном все на виндоусе сидят :) | |
| |
|
|