TP6自定义语言包
thinkPHP官网的例子是:
自动加载的应用语言文件位于:
// 单应用模式
app\lang\当前语言.php
// 多应用模式
app\应用\lang\当前语言.php
如果你还需要加载其他的语言包,可以通过extend_list设置,例如:
‘extend_list’ => [
‘zh-cn’ => [
app()->getBasePath() . ‘lang\zh-cn\app.php’,
app()->getBasePath() . ‘lang\zh-cn\core.php’,
],
]
上面的方法就是官方推荐的方法,官网例子点这里
官网例子都是基于框架本身的,不便于去后续拓展。现在用另外一种实现方式去实现多语言语言包的拓展(同样适用于多应用)
这里我们使用到服务注册,对TP6不是太了解的可以点这里
我在extend目录拓展了一个自己的库,方便实现自己自定义的一些方法,如图所示:
<?php
/**
* shier-erp
* ==========================================================================
* @Desc 底层服务
* ==========================================================================
*/
namespace erp\service;
use erp\Erp;
use think\Service;
use erp\command\logic;
use erp\command\Validate;
use erp\command\WithModel;
use erp\command\Menu;
class ErpService extends Service
{
/**
* 注册服务
*/
public function register()
{
$langPath = app(Erp::class)->getErpLangPath