Да, вы можете использовать глобальный массив $ _SERVER для обнаружения различной информации о запросе, такой как заголовки запроса. В частности, вы можете проанализировать строку User Agent, чтобы определить браузер, подключающийся к вашему PHP-приложению, и перенаправить на основе этой информации.
Документация по функции PHP get_browser здесь имеет хороший пример:
<?php
echo $_SERVER['HTTP_USER_AGENT'] . "\n\n";
$browser = get_browser(null, true);
print_r($browser);
?>
Используя вышеизложенное, вы можете создать свои собственные функции, такие как isAndroid или isIphone, для обнаружения мобильного устройства по строке пользовательского агента.
function isAndroid()
{
if(preg_match('/android/i', $browser))
return true;
return false;
}
function isIphone()
{
if(preg_match('/iphone/i', $browser))
return true;
return false;
}
Для справки, строка агента пользователя iPhone будет выглядеть примерно так:
Mozilla/5.0 (iPhone; U; CPU like Mac OS X; en) AppleWebKit/420+ (KHTML, like Gecko) Version/3.0 Mobile/1A543a Safari/419.3
Mozilla/5.0 (iPhone; U; CPU like Mac OS X; en) AppleWebKit/420+ (KHTML, like Gecko) Version/3.0 Mobile/1A543a
И строка пользовательского агента Android будет выглядеть так:
Mozilla/5.0 (Linux; U; Android 2.1; en-us; Nexus One Build/ERD62) AppleWebKit/530.17 (KHTML, like Gecko) Version/4.0 Mobile Safari/530.17
Надеюсь, это поможет!