swoft语言包的术语是:国际化
使用语言包好处:
统一存放"类型"数据 如
'sex'=>[0=>'未知',1=>'男','女']
// 文本中可用大括号注入参数
'sayhello' => 'Hey {name}!',
'saygoodbye' => 'Bye!',
'order_status'=>[0=>'无效',1=>'待付款',2=>'待发货',3=>'待确认',4=>'待评价',5=>'已完成']
如果数据发生变更,只需修改语言包里的内容即可,无需全文去修改
swoft默认调用语言包
\Swoft::t('sayhello', ['name' => 'man']);
\Swoft::t('msg.sayhello', ['name' => 'man'], 'en');
创建助手函数lang调用
if(!function_exists('lang')){
/*
* 语言包助手函数
* */
function lang(string $key, array $params = [], string $locale = ''){
return \Swoft::t($key, $params, $locale);
}
}