강력해진 PHP의 브라우저 언어 감지
PHP 스크립트에 브라우저 언어에 따라 적절한 페이지를 자동으로 포함하려고 시도했습니다. 그러나 특정 브라우저에서는 스크립트가 불안정하여 "index_en.php" 페이지가 지속적으로 표시됩니다. 이 문제를 해결하고 솔루션의 안정성을 높이려면 다음 개선 사항 구현을 고려하십시오.
$GLOBALS[$Var]가 이미 설정되었을 수 있는 환경을 처리하도록 lixlpixel_get_env_var($Var)를 수정해야 합니다.
strpos를 사용하여 허용되는 언어를 반복적으로 검색하는 대신 HTTP_ACCEPT_LANGUAGE 헤더를 배열로 구문 분석하고 일치합니다.
하드 코딩된 배열에 의존하는 대신 데이터베이스나 기타 구조화된 데이터 소스에 사용 가능한 언어를 저장하는 것이 좋습니다.
언어 우선 순위 목록 또는 언어 선택 페이지로 리디렉션됩니다.
간체 대안
더 간단한 접근 방식을 위해 다음 스크립트를 활용할 수 있습니다.
$lang = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 2); $acceptLang = ['fr', 'it', 'en']; $lang = in_array($lang, $acceptLang) ? $lang : 'en'; require_once "index_{$lang}.php";
이 스크립트는 HTTP_ACCEPT_LANGUAGE 헤더를 사용하여 브라우저의 언어를 감지하고 해당 항목을 로드하는 의도된 기능을 유지합니다. "index_xx.php" 페이지. 이는 PHP의 기본 substr 함수를 사용하여 언어 코드의 처음 두 문자를 추출합니다. $acceptLang 배열은 허용되는 언어를 정의합니다. 감지된 언어가 배열의 언어와 일치하면 해당 언어가 사용됩니다. 그렇지 않으면 'en'이 기본값으로 간주됩니다. require_once 문에는 감지된 언어에 따라 적절한 "index_xx.php" 파일이 포함되어 있습니다.
위 내용은 올바른 페이지를 제공하기 위해 PHP에서 브라우저 언어를 안정적으로 감지하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!