是否可以在 Laravel 的 Request 类中访问 $request 变量?

Is it possible to access the $request variable inside the Request class in Laravel?

提问人:TAVARES 提问时间:10/11/2023 更新时间:10/11/2023 访问量:53

问:

当我在控制器中进行验证时,如以下 Laravel 示例所示:

Validator::make($request->all(), [ 'credit_card_number' => 'required_if:payment_type,cc' ]);

我可以轻松访问$request,因为我在控制器方法中。但是,我注意到使用自定义请求类被认为是 Laravel 中的最佳实践。我有一个关于这个问题的问题:是否可以访问 Request 类中的请求变量?

PHP Laravel 验证 请求

评论

0赞 noah1400 10/11/2023
你为什么需要这个?你不能在课堂上使用吗?$this
0赞 TAVARES 10/11/2023
我做了同样的测试,我意识到我可以利用$this访问对象,这是有道理的,因为$this是请求类的对象。

答:

1赞 Akshay ak 10/11/2023 #1

是的,这是可能的,并且在 Request 类中访问请求很简单。

您的请求类 :

 public function rules()
{
    $paymentType1 = $this->request->input('payment_type');
    //OR 
    $paymentType2 = $this->input('payment_type');

    return [
        'credit_card_number' => 'required_if:payment_type,cc',
    ];
}

评论

0赞 TAVARES 10/11/2023
好的,我明白了,谢谢。