Как определить браузер пользователя, используя PHP?
Вопрос
Как определить браузер пользователя, используя PHP?
Так что если браузер пользователей IE, то, то вариабельная $ Alert = «Onbeofeunload», и если она не является, например, например Firefox (ELL), затем $ alert = "oepload.
Помощь очень ценится.
Спасибо
Также обратите внимание, что не могу установить Browcocap.ini на моем PHP-сервере.
Решение
Посмотрите, работает ли этот код для вас
<?php
function detect_ie(){
return (sizeof(explode("MSIE",$_SERVER['HTTP_USER_AGENT'])) > 1);
}
if (detect_ie())
$event = "onbeforeunload";
else
$event = "onload";
?>
Другие советы
Вы не можете. Не с 100% точностью. Лучший метод, который должен проверить пользовательский агент, однако пользователь свободен не поставлять его или подделать его, поэтому старайтесь не полагаться на него.
$ua = $_SERVER['HTTP_USER_AGENT'];
Если браузер IE, то есть (quotely) совпадение (где # это число)
Mozilla/#.0 (compatible; MSIE #.##;
Для чего регельс будет что-то вроде
'~^Mozilla/[0-9]\.0 (compatible;\s+MSIE~i'
В качестве альтернативы вы можете просто проверить на строку «MSIE», которая была бы проще и чуть менее строгой.
Но, как сказал @michal, есть другие (лучше) нанесения на Get_Browser Руководство страницы
использовать $_SERVER['HTTP_USER_AGENT']
Проверьте, содержит ли он «IE» напрямую, а затем номер.
Я предпочел бы сделать это в самом JavaScript, хотя.
if (typeof window.onbeforeunload !== "undefined") window.onbeforeunload = myFunc;
else window.onunload = myFunc;
Библиотеки JavaScript намного лучше обнаружить и обрабатывать разное поведение браузера. Просто позвольте зрелой библиотеке, такой как jQuery, и вы будете в порядке.