如何获取整个laravel语言(本地化)数据


how to get the whole laravel language(localization) data onto view?

我想在浏览器的前端部分使用laravel语言数据。

所以我可以在js中使用sprintf在前端部分显示相同的翻译。

我希望它可以是一个大的javascript对象。它将是非常容易和良好的使用。

提前谢谢。

这是我自己处理过的一种情况,答案有点尴尬。

您可以使用Lang::get('file')将整个文件输出为一个数组,您可以将其与json_encode一起使用来执行您想要的操作但是,据我所知,你无法获得所有的语言文件。这可能与Laravel无法在不消耗大量磁盘资源的情况下扫描目录中的所有文件名有关,而且通常情况下也不会这样做。在所有适用的情况下,语言都是通过延迟加载来处理的。

但是!您可以做的是将所有与JavaScript相关的语言放在一个文件中。我调用了我的widgets.php,然后调用json_encode( Lang::get('widget') ),在一个对象中获得与JavaScript相关的语言。

或者,如果你真的需要所有这些,你可以手动构建它。

$lang = ['auth', 'validation', 'etc'];
for ($files as $file)
{
    $lang[$file] = Lang::get($file);
}
return json_encode($lang);

我想最简单的方法就是使用cookie。设置cookie与Laravel:

$cookie = Cookie::make($name, $value);

然后用JS:读取并解析

var x = document.cookie;