>백엔드 개발 >PHP 튜토리얼 >PHP에서 브라우저 언어를 어떻게 안정적으로 감지할 수 있습니까?

PHP에서 브라우저 언어를 어떻게 안정적으로 감지할 수 있습니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-12-14 04:29:10336검색

How Can I Reliably Detect Browser Language in PHP?

PHP에서 브라우저 언어 감지: 강력한 솔루션

제공된 PHP 스크립트는 브라우저 언어를 정확하게 감지하는 데 어려움을 겪으며, 종종 기본값은 "index_en"입니다. .php"는 모든 언어에 적용됩니다. 이 문제를 해결하려면 보다 포괄적인 접근 방식이 필요합니다.

강력한 솔루션 중 하나는 내장된 PHP 기능과 간단한 알고리즘을 활용하는 것입니다. 다음 스크립트는 이를 달성합니다.

<?php
    // Extract the first two characters from the HTTP_ACCEPT_LANGUAGE header as the browser language.
    $lang = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 2);

    // Define a list of supported languages.
    $acceptLang = ['fr', 'it', 'en']; 

    // Check if the browser language is in the supported list.
    $lang = in_array($lang, $acceptLang) ? $lang : 'en';

    // Include the appropriate language-specific page.
    require_once "index_{$lang}.php"; 
?>

이 스크립트는 다음과 같이 작동합니다.

  1. 브라우저에서 설정한 기본 언어가 포함된 HTTP_ACCEPT_LANGUAGE 헤더에서 처음 두 문자를 추출합니다. .
  2. 그런 다음 이 값을 사전 정의된 지원 목록과 비교합니다.
  3. 브라우저 언어가 지원되지 않는 경우 기본값은 영어("en")입니다.
  4. 마지막으로 "index_fr.php" 등 해당 언어별 페이지가 포함됩니다. 프랑스어의 경우, 기타 모든 언어의 경우 "index_en.php"입니다.

위 내용은 PHP에서 브라우저 언어를 어떻게 안정적으로 감지할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.