> 백엔드 개발 > PHP 튜토리얼 > PHP는 클라이언트 브라우저의 유형을 결정합니다.

PHP는 클라이언트 브라우저의 유형을 결정합니다.

巴扎黑
풀어 주다: 2016-11-22 15:32:34
원래의
1925명이 탐색했습니다.

1. $_SERVER['HTTP_USER_AGENT']를 사용하여 브라우저 유형을 결정하는 PHP 메서드를 작성합니다.

function my_get_browser(){
if(empty($_SERVER['HTTP_USER_AGENT'])){
return '명령줄, 로봇이 여기 있습니다! ';
}
if(false!==strpos($_SERVER['HTTP_USER_AGENT'],'MSIE 9.0')){
return 'Internet Explorer 9.0';
}
if (false!==strpos($_SERVER['HTTP_USER_AGENT'],'MSIE 8.0')){
return 'Internet Explorer 8.0';
}
if(false!==strpos($_SERVER[ 'HTTP_USER_AGENT'],'MSIE 7.0')){
return 'Internet Explorer 7.0';
}
if(false!==strpos($_SERVER['HTTP_USER_AGENT'],'MSIE 6.0') ){
return 'Internet Explorer 6.0';
}
if(false!==strpos($_SERVER['HTTP_USER_AGENT'],'Firefox')){
return 'Firefox';
}
if(false!==strpos($_SERVER['HTTP_USER_AGENT'],'Chrome')){
return 'Chrome';
}
if(false!==strpos ($_SERVER['HTTP_USER_AGENT'],'Safari')){
return 'Safari';
}
if(false!==strpos($_SERVER['HTTP_USER_AGENT'],'Opera') ){
return 'Opera';
}
if(false!==strpos($_SERVER['HTTP_USER_AGENT'],'360SE')){
return '360SE';
}
}

$_SERVER['HTTP_USER_AGENT']는 여기서 주로 사용됩니다. 이 상수는 페이지를 탐색하는 방문자가 어떤 운영체제(버전 번호 포함)를 사용하고 있는지 확인하는 데 사용됩니다( 포함). 버전 번호) 및 사용자 기본 설정. 사용법은 매우 간단합니다. 프로그램에서 인쇄해 보면 이해하실 것입니다.

2. 또한 PHP는 PHP 시스템 함수 get_browser() 함수를 통해 브라우저 유형을 결정할 수도 있습니다. 이 함수는 사용자 브라우저의 일부 성능 데이터를 반환합니다. 이 기능은 사용자의 browscap.ini 파일을 참조하여 사용자 브라우저의 성능을 측정합니다. 성공하면 함수는 사용자의 브라우저 정보가 포함된 객체나 배열을 반환하고, 실패하면 false를 반환합니다.

get_browser 구문

get_browser(user_agent,return_array)

이 함수에는 두 가지 매개변수가 있습니다. 매개변수의 의미는 다음과 같습니다.

user_agent는 선택 과목. HTTP 사용자 에이전트의 이름을 지정합니다. 기본값은 $HTTP_USER_AGENT 값입니다. NULL을 설정하면 이 매개변수를 무시할 수 있습니다.

return_array 선택사항. 이 매개변수가 true로 설정된 경우 이 함수는 객체 대신 배열을 반환합니다.

php가 $_SERVER['HTTP_USER_AGENT']와 get_browser를 통해 얻는 브라우저 정보는 다음 예시를 통해 이해할 수 있습니다.

echo $_SERVER[ 'HTTP_USER_AGENT'] "

";
$browser = get_browser(null,true);
print_r($browser);
?>

결과는 다음과 같습니다.

Mozilla/4.0
(호환; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)

배열(
[browser_name_regex] => ^mozilla/..0
(호환; msie 6.0.*;.*windows nt 5.1.*.net clr.*).*$
[browser_name_pattern] = > ; Mozilla/?.0
(호환; MSIE 6.0*;*Windows NT 5.1*.NET CLR*)*
[상위] => IE 6.0
[플랫폼] => 🎜 >[netclr] => 1
[browser] => IE
[버전] => 6.0
[majorver] => 6
[minorver] => 0
[css] => 2
[프레임] => 1
[iframes] => 1
[쿠키] => > 1
[vbscript] => 1
[javascript] => 1
[javaapplets] => 1
[activexcontrols] => >[cdf] => ] =>
[베타] =>
[win16] =>
[크롤러] =>
[스트리퍼] =>
[wap] =>
[ak] =>
[sk] =>
)

하지만 PHP의 get_browser() 함수를 통해 고객을 가져오고 브라우저 관련 정보를 직접 사용하는 경우에는 일반적으로 다음 오류가 보고됩니다.

경고: get_browser() [function.get-browser]: browscap ini 지시문이 ……
에 설정되지 않았습니다.

PHP 매뉴얼을 검색해 보면 다음과 같습니다. 이 기능을 사용하려면 php.ini 파일의 browscap.ini 파일에 구성 지점을 추가해야 합니다. browscap.ini 파일은 기존 브라우저를 모두 기록합니다. 및 해당 정보가 있으므로 최신 파일을 다운로드하고 browscap.ini를 다운로드하여 서버 어딘가에 저장해야 합니다. get_browser()를 사용하면 얻은 클라이언트 정보를 이 파일과 비교하여 찾을 수 있으면 반환합니다. 해당 유형.

위에서 보면 get_browser()를 사용하여 브라우저 유형을 얻는 것이 저렴하지 않은 것 같습니다!

3. PHP에서 브라우저 종류를 판별하는 또 다른 방법은 외국 전문가가 작성한 오픈 소스 코드를 사용하는 것입니다. 브라우저 프로젝트가 있는 mavrick이라는 웹사이트가 있는데, 작성한 브라우저 클래스를 계속 업데이트하고 있습니다. 제가 본 최신 클래스는 iPhone, BlackBerry, win, mac, linux, OS, BeOS 및 기타 플랫폼에서 얻을 수 있습니다. 브라우저 정보 기능은 매우 강력하다고 할 수 있습니다. 이 파일을 다운로드할 때 사용 중인 PHP 버전에 따라 선택해야 합니다. 이 클래스의 특정 코드를 직접 다운로드하고 연구하세요.

browser-v1-9

이 클래스를 사용하는 방법도 다음과 같이 매우 간단합니다.

$obj_browser = new Browser; //이 클래스의 인스턴스 생성
$obj_browser->getBrowser(); //브라우저 이름을 가져오기 위해 관련 함수 호출
$obj_browser->getPlatform(); 시스템 이름을 가져오는 함수
$obj_browser->isMobile() // 방문자가 사용하는 기기가 iPhone, iPad 또는 컴퓨터(PC)인지 확인


관련 라벨:
php
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿