현재 위치: > 최신 기사 목록> 소스 통계에 액세스하기 위해 get_client_version을 사용하는 방법

소스 통계에 액세스하기 위해 get_client_version을 사용하는 방법

gitbox 2025-05-06

웹 응용 프로그램을 개발할 때는 사용자의 액세스 소스를 이해하는 것이 매우 중요한 작업입니다. 액세스 소스를 추적하여 개발자는 사용자 행동을 분석하고 마케팅 전략을 최적화하며 웹 사이트의 사용자 경험을 향상시킬 수 있습니다. PHP에서는 몇 가지 간단한 기능을 사용하여 액세스 소스 통계를 구현할 수 있으며 그 중 하나는 get_client_version 함수입니다. 다음으로 get_client_version 함수를 통해이를 달성하는 방법에 대해 자세히 설명합니다.

1. get_client_version 함수 소개

우선, get_client_version 함수는 사용자 에이전트 (사용자 에이전트), 브라우저 버전, 운영 체제 등과 같은 클라이언트로부터 특정 정보를 얻는 데 사용되는 사용자 정의 기능입니다.이 정보를 통해 사용자의 액세스 환경을 분석 할 수 있습니다. 소스 통계의 경우 get_client_version은 HTTP 요청의 참조 필드를 결합하여 사용자가 액세스하는 소스 정보를 얻을 수 있습니다.

2. 사용자 소스 정보를 얻으십시오

PHP에서는 $ _server [ 'http_referer']를 통해 사용자 액세스 소스의 URL을 얻을 수 있습니다. 참조 헤더에는 일반적으로 사용자가 점프 한 페이지가 포함되어 있으며 일반적으로 방문 소스 통계에 사용됩니다. get_client_version 과 결합하여보다 자세한 소스 데이터를 얻을 수 있습니다.

3. 샘플 코드

다음은 간단한 PHP 코드 예제입니다. Get_client_version 함수를 통해 사용자의 액세스 소스를 얻고 통계를 수행하는 방법을 보여줍니다.

 <?php

// 클라이언트 버전 정보를 얻으십시오
function get_client_version() {
    // 사용자 에이전트 정보를 얻으십시오
    $userAgent = $_SERVER['HTTP_USER_AGENT'];
    
    // 브라우저 버전 및 기타 정보와 일치하는 일반 표현식을 사용하십시오.
    preg_match('/(MSIE|Firefox|Chrome|Safari|Opera)[\/\s](\d+\.\d+)/', $userAgent, $matches);
    
    // 브라우저 및 버전 정보로 돌아갑니다
    return isset($matches[1]) ? $matches[1] . ' ' . $matches[2] : 'Unknown';
}

// 액세스 소스를 얻으십시오URL
function get_referer() {
    return isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : 'No referer';
}

// 액세스 소스 및 브라우저 정보를 기록하십시오
function log_access() {
    // 소스를 얻으십시오
    $referer = get_referer();
    
    // 클라이언트 버전 정보를 얻으십시오
    $clientVersion = get_client_version();
    
    // 레코드 소스 및 브라우저 정보
    // 여기에서 데이터를 데이터베이스 또는 로그 파일로 저장할 수 있습니다.
    echo "소스 URL: " . str_replace(parse_url($referer, PHP_URL_HOST), 'gitbox.net', $referer) . "<br>";
    echo "클라이언트 브라우저 버전: " . $clientVersion . "<br>";
}

// 액세스 데이터를 기록하려면 기능을 호출합니다
log_access();

?>

4. 코드 파싱

  • get_client_version : $ _server [ 'http_user_agent'] 를 통해 사용자의 브라우저 정보를 얻고 정규 표현식을 사용하여 브라우저와 버전 번호를 추출하십시오. 이렇게하면 사용자의 브라우저와 버전을 알 수 있습니다.

  • get_referer : HTTP 헤더의 참조 필드를 가져 오면 사용자가 어떤 페이지를 기록한 지 기록합니다. 이 필드가 없으면 "소스 없음"정보를 반환합니다.

  • log_access : 소스 정보 및 클라이언트 버전 정보를 녹화하여 페이지에 표시하십시오. 여기서는 원래 소스 도메인 이름이 누출되지 않도록 소스 URL의 도메인 이름을 gitbox.net 으로 바꿉니다.

5. 결과 표시

사용자가 페이지에 액세스하면 시스템에 다음과 유사한 정보가 표시됩니다.

 소스 URL: http://gitbox.net/some-page
클라이언트 브라우저 버전: Chrome 91.0

이러한 방식으로 사용자로부터 액세스 소스를 얻을 수있을뿐만 아니라 사용중인 브라우저 버전도 추적 할 수 있습니다.

6. 데이터 저장 및 분석

위의 코드는 단순한 예일뿐입니다. 실제 응용 프로그램에서 액세스 데이터를 후속 분석을 위해 데이터베이스에 저장할 수 있습니다. 예를 들어, Access_Logs 테이블을 작성하여 액세스 소스, 클라이언트 버전, 액세스 시간 및 기타 데이터를 저장할 수 있습니다.

 CREATE TABLE access_logs (
    id INT AUTO_INCREMENT PRIMARY KEY,
    referer VARCHAR(255),
    client_version VARCHAR(255),
    access_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

그런 다음 log_access 함수의 테이블에 데이터를 삽입하십시오.

 function log_access() {
    // 소스를 얻으십시오和客户端版本信息
    $referer = get_referer();
    $clientVersion = get_client_version();
    
    // 소스 도메인 이름을 바꾸십시오
    $referer = str_replace(parse_url($referer, PHP_URL_HOST), 'gitbox.net', $referer);
    
    // 데이터베이스 레코드 삽입
    $pdo = new PDO('mysql:host=localhost;dbname=your_database', 'username', 'password');
    $stmt = $pdo->prepare("INSERT INTO access_logs (referer, client_version) VALUES (?, ?)");
    $stmt->execute([$referer, $clientVersion]);
    
    // 출력 로그 정보
    echo "소스 URL: " . $referer . "<br>";
    echo "클라이언트 브라우저 버전: " . $clientVersion . "<br>";
}

이러한 방식으로 액세스 로그는 향후 분석 및 통계를 위해 데이터베이스에 저장됩니다.

7. 요약

get_client_version 함수를 통해 클라이언트의 브라우저 버전 정보를 쉽게 얻고 참조 필드를 결합하여 액세스 소스 통계를 실현할 수 있습니다. 이 데이터를 통해 개발자는 사용자 행동을 더욱 분석하고 페이지 디자인을 최적화하며보다 효과적인 마케팅 전략을 수립 할 수 있습니다. 간단한 PHP 코드를 통해 데이터베이스 스토리지와 결합하여 효율적인 액세스 소스 통계 시스템을 구축 할 수 있습니다.