Laravel默认的报错信息显示的是英文,Laravel 为消息验证的多语言提供了一种非常简便的方法进行支持。我们可以通过添加一个如 resources/lang/xx/validation.php 语言包,并在语言包的 custom 数组中对翻译语言进行设定。

如:

'custom' => [
  'email' => [
    'required' => '邮箱地址不能为空!',
  ],
],

这是非常通用的功能,所以在 GitHub 上有人专门为此写了一个扩展包 – Laravel-lang 来对 Laravel 提供默认提示信息添加多语言版本翻译。

接下来让我们使用 Composer 来安装 Laravel-lang。

$ composer require "caouecs/laravel-lang:~3.0"

安装后的 laravel-lang 扩展包的所有核心文件都将被放置在 vendor/ 文件夹下,其中包括我们需要的中文语言包,让我们将中文语言包提取到 Laravel 默认指定的语言包存放路径 resources/lang 中。

$ cp -a vendor/caouecs/laravel-lang/src/zh-CN resources/lang

完成之后你便可在 resources/lang/zh-CN 文件夹中看到我们新增的语言包文件。

最后,我们还需要将项目语言设置为中文。

config/app.php

<?php
  
return [
  .
  .
  .
  'locale' => 'zh-CN',
  .
  .
  .
];

现在再次提交验证不通过的信息,能看到错误提示已变成中文。