>  기사  >  백엔드 개발  >  thinkPHP에서 다국어 설정을 전환하는 방법

thinkPHP에서 다국어 설정을 전환하는 방법

不言
不言원래의
2018-06-07 16:32:083982검색

이 글은 thinkPHP의 다국어 전환 설정 방법을 주로 소개하고, 다국어 전환 기능을 구현하기 위한 thinkPHP의 구체적인 단계와 관련 구현 기술을 예시 형식으로 자세히 분석하여 도움이 필요한 친구들이 참고할 수 있습니다

이 기사의 예에서는 thinkPHP 다중 언어 전환 설정 방법을 설명합니다. 참고용으로 모든 사람과 공유하세요. 세부 사항은 다음과 같습니다.

Thinkphp 다국어 설정이 약간 "고급"인데 왜 약간 "고급"이라고 하시나요? 설정하는데 시간이 오래 걸리고, 그렇게 하게 된 이유는 '언어 설정을 활성화하려면 먼저 초기화 시스템의 동작 클래스를 활성화해야 하기 때문'입니다. 따라서 여기서는 제 경험이 부족해서 tp의 다국어 설정은 먼저 tp의 CheckLangBehavior.class.php를 초기화해야 할 것 같습니다

CheckLangBehavior.class.php를 어떻게 초기화하나요? 아래에 설명되어 있습니다.

tp 프레임워크에서 모든 모듈은 CheckLangBehavior.class.php를 초기화합니다. 아래 스크린샷은 다음과 같습니다.

경로를 이해할 수 있어야 합니다. 공개 모듈 구성 파일 config.php에 새 Tags.php를 생성하기만 하면 됩니다. , Tags.php의 내용은 다음과 같습니다.

<?php
return array(
//app_begin这个行为标签,其实就是tp的内置标签,作用是在tp初始化的时候,触发某个行为,在这里设置当然是触发多语言的功能了
&#39;app_begin&#39; => array(&#39;Behavior\CheckLangBehavior&#39;),//开启语言功能
);

위의 checkLangBehavior.class.php는 tp의 내장 동작 클래스 폴더 아래에 있습니다. 먼저 스크린샷을 찍어서 증명해 보세요.

이 클래스는 위의 클래스와 동일합니까? TP 프레임워크의 Library/Behavior 폴더로 이동하여 이 클래스가 존재하는지 확인할 수 있습니다. 여기서는 내용을 분석하지 않겠습니다.

위의 tagged.php를 구성한 후 tp 구성 파일인 config.php를 구성해야 합니다.

이 config.php는 위의 첫 번째 스크린샷에 있으며 거기에 다음 코드만 추가하면 됩니다.

&#39;LANG_SWITCH_ON&#39;  => true,    //开启多语言支持开关
&#39;DEFAULT_LANG&#39;    => &#39;zh-cn&#39;,  // 默认语言
&#39;LANG_LIST&#39;    => &#39;zh-cn,en-us&#39;, // 允许切换的语言列表 用逗号分隔
&#39;LANG_AUTO_DETECT&#39;  => true,  // 自动侦测语言

이것을 구성한 후에는 다중 언어 파일을 구성할 차례입니다. 스크린샷:

다음은 구성 en-us.php 파일의 코드입니다:

<?php
return array(
  /* 核心语言变量 */
  &#39;_WEB_NAME_&#39;   => &#39;TRAVEL&#39;,
  &#39;_WELLCOME_&#39;   => &#39;Wellcome here!&#39;,
);

zh -cn.php 파일의 코드:

<?php
return array(
  /* 核心语言变量 */ 
  &#39;_WEB_NAME_&#39;   => &#39;来往&#39;,
  &#39;_WELLCOME_&#39;   => &#39;欢迎来往!&#39;,
);

다음은 내 IndexController.class.php의 lang 메소드에 대한 코드입니다.

public function lang(){
    $wellcome = L(&#39;_WELLCOME_&#39;);
    $this->assign(&#39;wellcome&#39;, $wellcome);
    $this->display();
}

이것은 내 IndexController.class의 코드입니다. php 컨트롤러 lang 메소드의 기본 템플릿 lang.html은 아래에서 테스트할 수 있습니다.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="zh-cn">
<head>
  <meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
  <title>Tp语言设置测试</title>
  <meta name="keywords" content="关键字列表" />
  <meta name="description" content="网页描述" />
  <link rel="stylesheet" type="text/css" href="" />
  <style type="text/css"></style>
  <script type="text/javascript"></script>
</head>
<body>
<p>{$wellcome}</p>
<p>切换到:<a href="?l=zh-cn">简体中文</a> | <a href="?l=en-us">English</a></p>
</body>
</html>

테스트 결과는 다음과 같습니다.

언어 전환이 있는 경우 클릭할 수 있습니다. 중국어, 영어 맞습니다

이상 이 글의 내용이 모두의 학습에 도움이 되었으면 좋겠습니다. 더 많은 관련 내용은 PHP 중국어 홈페이지를 주목해주세요!

관련 권장 사항:

thinkphp는 다중 언어 기능을 구현합니다(언어 팩)

위 내용은 thinkPHP에서 다국어 설정을 전환하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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