
get_browser() 함수는 deprecated되었으며, PHP 8.0부터는 사용할 수 없습니다. 대신, User-Agent 헤더를 분석하여 브라우저 정보를 얻을 수 있습니다.
User-Agent 헤더를 분석하는 방법은 다음과 같습니다.
1. $_SERVER['HTTP_USER_AGENT'] 변수를 사용하여 User-Agent 헤더를 가져옵니다.
2. 가져온 User-Agent 헤더를 분석하여 브라우저 이름과 버전을 추출합니다.
예를 들어, 다음 코드는 User-Agent 헤더를 분석하여 브라우저 이름과 버전을 출력합니다.
#hostingforum.kr
php
$userAgent = $_SERVER['HTTP_USER_AGENT'];
$browserName = '';
$browserVersion = '';
if (strpos($userAgent, 'Chrome') !== false) {
$browserName = 'Chrome';
$browserVersion = preg_match('/Chrome/([0-9.]+)/', $userAgent, $matches) ? $matches[1] : '';
} elseif (strpos($userAgent, 'Firefox') !== false) {
$browserName = 'Firefox';
$browserVersion = preg_match('/Firefox/([0-9.]+)/', $userAgent, $matches) ? $matches[1] : '';
} elseif (strpos($userAgent, 'Safari') !== false) {
$browserName = 'Safari';
$browserVersion = preg_match('/Version/([0-9.]+)/', $userAgent, $matches) ? $matches[1] : '';
} elseif (strpos($userAgent, 'Edge') !== false) {
$browserName = 'Edge';
$browserVersion = preg_match('/Edge/([0-9.]+)/', $userAgent, $matches) ? $matches[1] : '';
} elseif (strpos($userAgent, 'IE') !== false) {
$browserName = 'IE';
$browserVersion = preg_match('/MSIEs([0-9.]+)/', $userAgent, $matches) ? $matches[1] : '';
}
echo "브라우저 이름: $browserNamen";
echo "브라우저 버전: $browserVersionn";
PHP에서 브라우저 정보를 얻는 다른 방법은 다음과 같습니다.
1. JavaScript를 사용하여 브라우저 정보를 얻습니다. 예를 들어, 다음 코드는 JavaScript를 사용하여 브라우저 이름과 버전을 출력합니다.
#hostingforum.kr
javascript
function getBrowserInfo() {
var userAgent = navigator.userAgent;
var browserName = '';
var browserVersion = '';
if (userAgent.indexOf('Chrome') !== -1) {
browserName = 'Chrome';
browserVersion = userAgent.match(/Chrome/([0-9.]+)/)[1];
} else if (userAgent.indexOf('Firefox') !== -1) {
browserName = 'Firefox';
browserVersion = userAgent.match(/Firefox/([0-9.]+)/)[1];
} else if (userAgent.indexOf('Safari') !== -1) {
browserName = 'Safari';
browserVersion = userAgent.match(/Version/([0-9.]+)/)[1];
} else if (userAgent.indexOf('Edge') !== -1) {
browserName = 'Edge';
browserVersion = userAgent.match(/Edge/([0-9.]+)/)[1];
} else if (userAgent.indexOf('IE') !== -1) {
browserName = 'IE';
browserVersion = userAgent.match(/MSIEs([0-9.]+)/)[1];
}
console.log("브라우저 이름: " + browserName);
console.log("브라우저 버전: " + browserVersion);
}
getBrowserInfo();
2. PHP의 curl 라이브러리를 사용하여 브라우저 정보를 얻습니다. 예를 들어, 다음 코드는 curl 라이브러리를 사용하여 브라우저 이름과 버전을 출력합니다.
#hostingforum.kr
php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://example.com');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HEADER, true);
$response = curl_exec($ch);
$header = curl_getinfo($ch, CURLINFO_HEADER_OUT);
curl_close($ch);
$browserName = '';
$browserVersion = '';
if (strpos($header, 'Chrome') !== false) {
$browserName = 'Chrome';
$browserVersion = preg_match('/Chrome/([0-9.]+)/', $header, $matches) ? $matches[1] : '';
} elseif (strpos($header, 'Firefox') !== false) {
$browserName = 'Firefox';
$browserVersion = preg_match('/Firefox/([0-9.]+)/', $header, $matches) ? $matches[1] : '';
} elseif (strpos($header, 'Safari') !== false) {
$browserName = 'Safari';
$browserVersion = preg_match('/Version/([0-9.]+)/', $header, $matches) ? $matches[1] : '';
} elseif (strpos($header, 'Edge') !== false) {
$browserName = 'Edge';
$browserVersion = preg_match('/Edge/([0-9.]+)/', $header, $matches) ? $matches[1] : '';
} elseif (strpos($header, 'IE') !== false) {
$browserName = 'IE';
$browserVersion = preg_match('/MSIEs([0-9.]+)/', $header, $matches) ? $matches[1] : '';
}
echo "브라우저 이름: $browserNamen";
echo "브라우저 버전: $browserVersionn";
2025-05-26 23:54