公司后台项目PHP Laravel,最近接手,因为项目要求多语言,自然一些错误信息也要多语言处理。
百度了很多花里胡哨,但其实很简单。
1.在config/app.php 里的 'locale' 配置自己的语言如
'locale' => 'en','zh',
2.在resources/lang下新建上面配置语言相对的目录,如en,zh目录。
3.在目录下创建PHP文件,里面返回一个数组,元素才key=>文本。如
return [
'error' => 'zh_error'
];
4.PHP代码中,如在控制器中调用方法进行语言切换
App::setLocale('zh');
5.为了获取文本,调用相应方法获得文本。
// 参数要和自己配置的翻译文本的key相同,不然会变成一个单纯的文本,而不是根据key去取值。
$msg = trans('error.error');
6.如果前后端分离,直接把这个trans后的文本返回即可。
7.可能还有持久化的问题,这个先就另想办法啦。
网友评论