Laravel翻译不起作用

Sca*_*olf 5 translation localization laravel

我有法语和英语语言。后备标准是法国(fr)。

我的文件夹结构: 在此处输入图片说明

这是login.php(英语)的内容:

<?php
return [
    'welcome' => 'Welcome',
    'mail' => 'E-Mail address',
    'password' => 'Password'
];
Run Code Online (Sandbox Code Playgroud)

我使用@lang()或引用键{{ trans('') }}。例:

<label for="email" class="col-md-4 control-label">{{ trans('admin.login.mail') }}</label>
Run Code Online (Sandbox Code Playgroud)

但是,这将返回为: 在此处输入图片说明

Ale*_*nin 5

当您将语言文件放入子文件夹时,您需要使用斜杠指定它。所以,试试这个:

{{ trans('admin/login.mail') }}
Run Code Online (Sandbox Code Playgroud)

  • 在 Laravel 9 中,翻译不起作用。根据[文档](https://laravel.com/docs/9.x/localization#introduction),新的默认文件夹是“app/lang”。这似乎不是真的。但是,当我将翻译文件(.php 和 .json)移动到通常的路径“app/resources/lang”时,翻译就可以工作了!谁能解释为什么? (6认同)
  • @Pathros我遇到了同样的问题,只是发现Laravel会首先在“resources\lang”中找到“lang”文件夹,如果找不到该文件夹​​,那么它会使用目录“app/lang”。如果你想使用`app\lang`中的文件,只需删除文件夹`resources\lang` (5认同)