다국어 웹 애플리케이션을 구축 할 때는 중국어 및 영어 스위칭을 지원하는 것이 일반적인 기능적 요구 사항입니다. 이 기사는 ThinkPHP 프레임 워크에 중점을두고 구성 및 개발을 통해 유연한 중국어 및 영어 전환 기능을 달성하여 웹 사이트의 국제 경험을 향상시키는 방법을 소개합니다.
먼저 Composer를 통해 ThinkPhp 6 버전을 설치해야합니다. 다음 명령을 사용하여 개발 환경을 신속하게 구축 할 수 있습니다.
composer create-project topthink/think myproject 6.0.*
설치가 완료되면 언어 전환 기능 구성 및 개발을 시작할 수 있습니다.
ThinkPHP 프로젝트의 구성 파일에 언어 관련 설정을 추가하십시오. 일반 구성 파일은 config/app.php 에 있습니다.
// config/app.php
return [
// 기본 언어
'default_lang' => 'zh-cn',
// 지원되는 언어 목록
'lang_list' => ['zh-cn', 'en-us'],
];
기본 언어 및 언어 목록을 설정하면 시스템이 중국어와 영어를 모두 지원하는지 확인할 수 있습니다.
App/Lang 디렉토리에서 두 개의 언어 패키지 파일을 만듭니다 .
// app/lang/zh-cn.php
return [
'hello' => '안녕하세요',
'welcome' => '내 웹 사이트에 오신 것을 환영합니다',
];
// app/lang/en-us.php
return [
'hello' => 'Hello',
'welcome' => 'Welcome to my website',
];
위의 내용은 다른 언어로 동일한 키 이름의 해당 내용을 정의하며 시스템은 현재 언어에 따라 자동으로 일치합니다.
쿠키를 설정하여 컨트롤러의 언어를 전환 할 수 있습니다.
public function switchLanguage($lang)
{
if (in_array($lang, config('lang_list'))) {
cookie('think_var', $lang);
}
}
이 방법은 들어오는 언어 매개 변수에 따라 쿠키를 설정하여 로케일을 업데이트합니다.
템플릿에서 Lang () 함수를 통해 언어에 해당하는 번역 내용을 얻을 수 있습니다.
echo lang('hello');
이 기능은 현재 로케일에 따라 해당 언어 값을 반환합니다.
템플릿에 현재 언어 상태를 표시하려면 판단 쿠키를 사용하여 달성 할 수 있습니다.
echo cookie('think_var') === 'en-us' ? ' English' : ' 중국인';
이것은 현재 언어 상태를 동적으로 표시하고 사용자 경험을 향상시킵니다.
언어 지원을 구성하고 언어 팩, 컨트롤러 로직 및 템플릿 판단을 작성함으로써 개발자는 ThinkPHP에서 중국어 및 영어 스위칭 기능을 쉽게 구현할 수 있습니다. 이 방법은 유연하고 효율적이며 국제적 지원이 필요한 모든 유형의 웹 사이트 프로젝트에 적합합니다.