PHP에서 사용자 에이전트를 얻는 방법


78

이 JS 코드를 사용하여 사용자가 사용하는 브라우저를 알고 있습니다.

<script>
  document.write(navigator.appName);
</script>

그리고이 navigator.appName을 PHP 코드로 가져와 다음과 같이 사용하고 싶습니다.

if ($appName == "Internet Explorer") {
  // blabla
}

내가 어떻게 해?


답변:


209

$_SERVER['HTTP_USER_AGENT']대신 기본 PHP 변수를 사용하십시오.


11
주의하세요, 이것은 설정할 수 없습니다!
Thomas Decaux

10
PHP7 +, 당신은 쓸 수 $_SERVER['HTTP_USER_AGENT']??null는 NULL을 반환있는 것이 아니라, 정의되지 않은 오류 던져
브라이언 Leishman

또는 나중에 문자열 조작 만하고 null에 대해 신경 쓰지 않거나 설정하지 않으려면 이렇게하십시오. $ ua = $ _SERVER [ 'HTTP_USER_AGENT']. '';
user2078023

22
또는 간단히 확인하십시오 isset()... 깨끗하고 읽기 쉬운 코드는 항상 최우선 순위 여야합니다.
StanE

4

PHP 기본 기능 get_browser ()를 사용할 수도 있습니다.

중요 참고 : browscap.ini 파일이 있어야합니다.


3
이를 위해서는 최신 browscap.ini 파일이 있어야합니다
null 허용

1
그렇습니다과 같은 사이트 하나를 다운로드 할 수 있습니다 꽤 많은 온라인 리소스가 browscap.org
Aurovrata

1
는 null 또는 false
페르난도 토레스

2
확실히 당신은이 Browscap.ini 파일이 있는지 확인
Aurovrata

2

클라이언트에서 서버로 데이터를 전달하려는 경우 jQuery ajax 메소드 링크를 사용할 수 있습니다 . 이 경우 $_SERVER['HTTP_USER_AGENT']변수를 사용 하여 브라우저 사용자 에이전트를 찾을 수 있습니다 .


1
이 작동 $_SERVER['USER_AGENT']합니까? 이어야한다 $_SERVER['HTTP_USER_AGENT']???
jogesh_pi 2012
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.