Laravel 7.2.* 语言字符串参数未使用给定值进行翻译

Laravel 7.2.* Language string parameter is not translating with the given value

我在 laravel 中使用语言参数时遇到一个奇怪的问题。它不是被变量替换而是输出整个密钥。

admin.php

return [
    ...
    'delete_title' => 'Delete :item',
    ...

    // user section
    'user'          => [
        'user'            => 'User',
        ...
    ],
];

view.blade.php

// this won't work
{__('admin.delete_title', ['item', 'User'])}}

// this won't work
{__('admin.delete_title', [':item', 'User'])}}

// this won't work
{__('admin.delete_title', ['item', __('admin.user.user')])}}

// this won't work
{__('admin.delete_title', ['item', __('admin.user.user')])}}

我认为你应该传递正确的参数来翻译函数试试:

{__('admin.delete_title', ['item'=>'User'])}}
  1. 需要以数组形式传递参数,所以:

    {{ __('admin.delete_title', ['item' => __('admin.user.user')]) }}
    
  2. 您在

    中有错字
    'delete_title => 'Delete :item', // missing '
    

    固定:

    'delete_title' => 'Delete :item',