Php FormRequest all()方法导致Laravel 5.5中的反射异常

Php FormRequest all()方法导致Laravel 5.5中的反射异常,php,laravel,laravel-5,laravel-5.4,laravel-5.5,Php,Laravel,Laravel 5,Laravel 5.4,Laravel 5.5,与laravel 5.5发行 如果我在formRequest类中使用all()方法,它会引发反射异常 但是当我删除all()方法时,它工作得很好 这在laravel 5.4中不是一个问题 <?php namespace App\Http\Requests; use Illuminate\Foundation\Http\FormRequest; class CashDepositRequest extends FormRequest { public function auth

与laravel 5.5发行

如果我在formRequest类中使用
all()
方法,它会引发反射异常

但是当我删除
all()
方法时,它工作得很好

这在laravel 5.4中不是一个问题

<?php

namespace App\Http\Requests;

use Illuminate\Foundation\Http\FormRequest;

class CashDepositRequest extends FormRequest
{
    public function authorize()
    {
        return true;
    }
    public function rules()
    {
        return [
            'amount' => 'bail|required|numeric',
            'gateway' => 'bail|required|exists:gateways,id',
        ];
    }
    //This method causes reflection exception
    public function all()
    {
        $this->attributes = parent::all();
        $this->attributes['amount'] = $this->attributes['amount'];
        return $this->attributes;
    }
}
首先
all()
不是属性,而是类方法

第二件事是这个方法的签名。父类中的签名如下所示:

public function all($keys = null)
所以您应该在子类中将其更新为相同的

如果从中的早期版本升级,您可以阅读:

如果要重写Lightlight\Http\Request类的all方法,则应更新方法签名以反映新的$keys参数:

这可能就是你的问题所在

public function all($keys = null)