Скрипт определения мобилы

1.26K
.
Enter нажат, к чему теперь рыданья…
Koenig, у тебя еще и ip показывает, а это уже лишнее.
.
Koenig (09.09.2011/18:03)
Мой пример http://annimon.com/code/?act=view&id=251
preg_match("/Opera Mini/i", $_SERVER['HTTP_USER_AGENT'])

Опера мини - это не толко Opera Mini, а еще как минимум operamini, opera/8.01
Я знаю о чем говорю, приходилось собирать статистику и анализировать.
З.Ы а на счет модов, это да, бида полная они не олько юзер-агенты не передают, а еще и реальный ip опсоса зажимают, только прокси.
.
(\/)____o_O____(\/)
<?php
echo '<pre>';
print_r($_SERVER);
echo '</pre>';
?>

По юзайте, может придет какой еще вариант проверки
.
Color Is Life...
zumak (09.09.2011/12:18)
[php]
if (isset($_SERVER['HTTP_USER_AGENT']))
{
$ua=$_SERVER['HTTP_USER_AGENT'];
// Опера мини тоже посылает данные о телефоне
if (isset($_SERVER['HTTP_X_OPERAMINI_PHONE_UA']) && preg_match('#
Помогите сделать вывод в функциях тут: $out .= '<div class="sub">';
if (isset($arg['sub']))
$out .= '<div>' . $arg['sub'] . '</div>';
if ($lastvisit)
$out .= '<div><span class="gray">' . self::$lng['last_visit'] . ':</span> ' . $lastvisit . '</div>';
$iphist = '';
if ($ipinf) {
$out .= '<div><span class="gray">Браузер: </span>'.$user['browser'].'</div><div><span class="gray">' . self::$lng['ip_address'] . ':</span> ';
Я пишу вместо
'.$user['browser'].' но вывод браузера идет над ником юзера, а там где Браузер: после идет айпи адрес
.
Нарыл работает )))
<?php
/**
 * Определение параметров мобильного устройства через яндекс api
 * автор: Nc_Soft
 * 21.04.10
 */
 
/*
Дока http://api.yandex.ru/detector/ ... t.xml
но пример для пхп там на данный момент неверный, вот мой вариант
*/
 
$headers = array();
$hmask = array(
'profile',
'wap-profile',
'x-wap-profile',
'user-agent',
'x-operamini-phone-ua',
);
 
foreach ($_SERVER as $key => $value) {
    if (strpos($key, "HTTP_") === 0) {
        $field = substr($key, 5);
        $field = strtolower($field);
        $field = str_replace('_', '-', $field);
        if (in_array($field, $hmask)) $headers[$field] = $value;
    }
}
 
$ch = curl_init('http://phd.yandex.net/detect?'.http_build_query($headers));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$res = curl_exec($ch);
curl_close($ch);
unset($headers);
echo $res;
 
/*
про ответы сервера можно почитать тут
http://api.yandex.ru/detector/ ... e.xml
 
И, пожалуйста, кэшируйте запросы к апи, не долбите яндекс 
*/
Всего: 65