Home  >  Article  >  Backend Development  >  How to switch multi-language settings in thinkPHP

How to switch multi-language settings in thinkPHP

不言
不言Original
2018-06-07 16:32:083782browse

This article mainly introduces the multi-language switching setting method of thinkPHP, and analyzes in detail the specific steps and related implementation techniques of thinkPHP to implement multi-language switching function in the form of examples. Friends in need can refer to the following

The example in this article describes the thinkPHP multi-language switching setting method. Share it with everyone for your reference, the details are as follows:

thinkphp multi-language setting is a bit "high-end", why is it said to be a bit "high-end"? Because it took me a long time to set it up, and the reason why it took me a long time to do it was because 'to enable language settings, you must first enable the behavior class of the initialization system'. Therefore, here, because of my limited experience, I think The multi-language setting of tp must first initialize the CheckLangBehavior.class.php of tp

How to initialize CheckLangBehavior.class.php? Explained below.

Under the tp framework, all modules initialize CheckLangBehavior.class.php, screenshot below:

You should be able to understand the path, it is in your public Just create a new tags.php in the module configuration file config.php. The content of tags.php is as follows:

 array('Behavior\CheckLangBehavior'),//开启语言功能
);

The above checkLangBehavior.class.php is in tp Under the built-in behavior class folder, take a screenshot to prove it:

Is this class exactly the same as the one above? You can go into the Library/Behavior folder of the TP framework to see if this class exists. What is the content in it? I will not analyze it here.

After configuring the above tags.php, we must configure the tp configuration file config.php

This config.php is in the first screenshot above, you just need to Add the following code there:

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

After configuring this, it is time to configure the multi-language file. Not much to say, screenshot:

The following is the code in the configuration en-us.php file:

 'TRAVEL',
  '_WELLCOME_'   => 'Wellcome here!',
);

The code in the zh-cn.php file :

 '来往',
  '_WELLCOME_'   => '欢迎来往!',
);

The following is the code of the lang method of my IndexController.class.php:

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

This is the default template lang.html under the lang method in my IndexController.class.php controller. You can test it below,




  
  Tp语言设置测试
  
  
  
  
  


{$wellcome}

切换到:简体中文 | English

The test results are as follows:

You can click to switch the language. If there is a conversion between Chinese and English, it is correct.

The above is the entire content of this article. I hope it will be helpful to you. Everyone’s learning is helpful. For more related content, please pay attention to the PHP Chinese website!

Related recommendations:

thinkphp implements multi-language functions (language pack)

##

The above is the detailed content of How to switch multi-language settings in thinkPHP. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn