在Laravel中添加和更新语言文件数组

我可以从此函数获取语言数组

$array = Lang::get('msg'); // return entire array
$text  = Lang::get('msg.success'); // return single item

$array = trans('msg'); // return entire array
$text = trans('msg.success'); // return single item

但是现在我想从控制器向此msg.php语言文件添加/更新新的键值。

我该怎么做?

我已经尝试过Lang::set(),但是没有这样的辅助功能。

q58603432 回答:在Laravel中添加和更新语言文件数组

您可以使用软件包来管理语言。

https://github.com/barryvdh/laravel-translation-manager

使用非常简单。尝试

,

我建议使用JSON-based translations in Laravel。 然后,每种每种语言都有一个json文件。例如,英语将存储在resources/lang/en.json中。由于它只是一个json文件,因此您可以通过file_put_contents()json_encode()轻松地对其进行写入。

UPD:原来,语言更改应针对每个用户。然后,解决方案是在数据库中有一个单独的表,该表将包含字符串以及user_id。伪代码中是这样的:

function mytrans($string,$user_id) {
 if translation exists in the table for this user_id
    return translation
 else
    return trans(string);
}
本文链接:https://www.f2er.com/3147204.html

大家都在问