Laravel 验证 after() - 期望参数 1 是有效的回调

我不擅长编程,但我在 Laravel 中进行了验证:


$validator = \Validator::make($post_data, $rules);

$validator->after(\App\Helpers\PostHelpers::validatePostTitle($validator, $request));

我被告知不要重复自己的话。如何after()在辅助类中使用带有所需参数的函数?


    namespace App\Helpers;

    

    class PostHelpers

    {

        public static function validatePostTitle($validator, $request) {

            // do some magic

        }

    }

拉拉维尔 说:


call_user_func_array() expects parameter 1 to be a valid callback, no array or string given


在:


    public function after($callback)

    {

        $this->after[] = function () use ($callback) {

            return call_user_func_array($callback, [$this]);

        };

 

        return $this;

    }


慕桂英546537
浏览 157回答 1
1回答

慕妹3242003

该函数after需要回调作为参数。其中一种形式应该有效:$validator->after(function ($validator, $requst) {       return \App\Helpers\PostHelpers::validatePostTitle($validator, $request)  });或者$validator->after([\App\Helpers\PostHelpers::class, 'validatePostTitle' ]);
打开App,查看更多内容
随时随地看视频慕课网APP