Как определить браузер пользователя, используя PHP?

StackOverflow https://stackoverflow.com/questions/2658277

  •  27-09-2019
  •  | 
  •  

Вопрос

Как определить браузер пользователя, используя 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, и вы будете в порядке.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top