Laravel中$ errors的含义是什么

时间:2018-09-04 05:13:14

标签: php laravel

我是Laravel的新手,我想添加错误验证消息以查看,我想知道$errors变量是什么,以及它在后台如何工作。根据我的研究,变量是Illuminate\Support\MessageBag的实例,但是找不到任何进一步的解释和详细信息。请您说明一下,或者至少参考说明它的网站。

2 个答案:

答案 0 :(得分:2)

根据文档

注意:$ errors变量在每个应用了web中间件的Laravel视图中都可用。如果没有验证错误,它将只是ViewErrorBag的一个空实例。

还要注意,在此之前,我们必须通过调用Session::get('errors')->all()对其进行明确定义。

阅读此以获取更多信息: https://laravel.com/docs/5.6/validation#quick-displaying-the-validation-errors

此外,在您的项目中查找这些文件以获得更多信息。

/vendor/laravel/framework/src/Illuminate/Http/RedirectResponse.php - withErrors() method.
    /vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php - handle() method.

注意:在撰写本文时,我正在使用Laravel 5.6。

答案 1 :(得分:1)

$errors(来自Laravel)来自验证,要进一步了解估值,请参阅文档https://laravel.com/docs/5.6/validation#quick-displaying-the-validation-errors

要了解它在每个刀片上的显示方式,请检查您的app/Http/Kernel.php,中间件\Illuminate\View\Middleware\ShareErrorsFromSession::class并引用此中间件,您会看到以下几行:

$this->view->share(
    'errors', $request->session()->get('errors') ?: new ViewErrorBag
);

希望这会有所帮助。