php-在运行时为Lumen的.env文件中定义的APP_LOCALE设置值
作者:互联网
我最近开始学习Lumen微框架,并且需要在运行时更改.env文件中定义的APP_LOCALE键的值.我的目标是在运行时切换语言,以打印在我的语言文件中定义的某个String的不同翻译.
在流明文档中,它写为:
To set configuration values at runtime, pass an array to the config helper
因此,我在测试控制器中尝试了休闲:
use Illuminate\Support\Facades\App;
use Laravel\Lumen\Routing\Controller as BaseController;
class Controller extends BaseController{
public function show_test(){
echo(trans('testfile.greetings'));
config(['app.LOCALE' => 'en']);
echo(trans('testfile.greetings'));
}
}
在我的.env文件中,我的“默认” APP_LOCALE设置为“ fr”,调用此控制器的结果以法语打印了我的字符串两次,而不是预期的法语打印一次,然后是英语打印一次.
如何在运行时更改值?
解决方法:
显然有人在我几天后发布了same question,得到的答案是:
app('translator')->setLocale('en');
标签:lumen,laravel,php 来源: https://codeday.me/bug/20191028/1950435.html