如何用你的包语言覆盖 Laravel 的语言文件

芒果丁

我正在尝试resources/lang/en使用我的包中的语言覆盖默认的 laravel 英语语言包。

该包只是将自己的语言文件发布到 egresources/lang/vendor/*package-name*/de并在其中包含与 laravel 标准 lang 文件相同的文件,例如validation.phpauth.php

有没有办法告诉 Laravel 使用这些包翻译?

莫扎米尔

文档中

包翻译文件通常使用双冒号语法进行引用。

在包的服务提供者boot方法中加载翻译时,您需要告诉 Laravel 它的位置。因此,假设您的包的名称是acme,您会有这样的东西。

public function boot()
{
    $this->loadTranslationsFrom(__DIR__.'/path/to/translations', 'acme');
}

然后加载翻译,你会做这样的事情:

trans('acme::file.line');

编辑:如果您想提供自定义验证消息,则需要messages()在您的Form Request 中添加一个方法例如:

public function messages() 
{
    return [
        'field' => trans('acme::validation.field')
    ];
}

如果您手动创建 Validator 实例,您可以这样做:

$messages = [
    'field' => trans('acme::validation.field')
];

$validator = Validator::make($input, $rules, $messages);

编辑:因为resources/lang/en/validation.php包含一个键值对数组,你可以用这个替换文件的内容:

<?php

return trans('acme::validation');

并假设您的包的验证文件正在返回一个键值对数组,这应该可以解决问题。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Laravel-语言文件的Foreach循环?

来自分类Dev

Laravel语言文件。赶上缺少的定义

来自分类Dev

我可以在Laravel中拆分语言文件来组织我的语言环境文件吗?

来自分类Dev

文件语言

来自分类Dev

Laravel-在自定义位置的多种语言文件

来自分类Dev

Laravel-在自定义位置的多种语言文件

来自分类Dev

如何在 Laravel 供应商文件夹中包含或扩展语言文件

来自分类Dev

Laravel 7如何安装语言

来自分类Dev

Laravel Vue语言翻译

来自分类Dev

Laravel 5.1 S语言

来自分类Dev

Laravel设置用户语言

来自分类Dev

指定Laravel验证语言

来自分类Dev

Laravel Vue语言翻译

来自分类Dev

如何使用打包语言文件?

来自分类Dev

如何更改文件输入语言

来自分类Dev

如何用C语言计算xls文件的MD5

来自分类Dev

如何用汇编语言正确处理文件

来自分类Dev

更新语言文件中的语言数组

来自分类Dev

语言和语言环境文件的位置

来自分类Dev

Laravel 5:为什么我不能在语言文件中使用整数和浮点数?

来自分类Dev

Laravel 5:为什么我不能在语言文件中使用整数和浮点数?

来自分类Dev

Laravel:如何在刀片和控制器中的语言文件中使用短变量名

来自分类Dev

Laravel Cashier Billing门户语言

来自分类Dev

每个用户的Laravel语言设置

来自分类Dev

Laravel 5语言特定路径

来自分类Dev

Laravel 5.6 路由语言环境

来自分类Dev

更改语言输入类型=文件

来自分类Dev

更改语言输入类型=文件

来自分类Dev

用C语言读取文件