ThinkPHP框架提供了多语言支持,通过使用语言包来实现。
首先在 application
目录下创建 lang
目录,再在 lang
目录下创建语言包目录,如 zh-cn
表示中文简体语言包。
在语言包目录中创建 PHP 文件,文件名为语言包的名称,如 common.php
,并在文件中定义语言变量,如:
return [
'hello' => '你好',
'world' => '世界',
];
// 控制器中
echo lang('hello') . lang('world');
// 模板中
{$Think.lang.hello}{$Think.lang.world}
其中,lang()
函数用于获取语言包中的语言变量,$Think.lang
变量用于在模板中获取语言包中的语言变量。
http://example.com/index/index/index?l=zh-cn
在控制器中可以通过 input()
函数获取语言参数并设置当前语言,如:
$lang = input('l');
if (in_array($lang, ['en-us', 'zh-cn'])) {
cookie('think_var', $lang);
}
使用 cookie()
函数将语言参数存储到 Cookie 中,下次访问时会默认使用存储的语言参数。
以上就是 ThinkPHP 框架进行多语言支持的基本方法。