Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Laravel如何在内部调用具有参数的方法,该方法声明为请求类的实例?_Php_Laravel_Laravel 5 - Fatal编程技术网

Php Laravel如何在内部调用具有参数的方法,该方法声明为请求类的实例?

Php Laravel如何在内部调用具有参数的方法,该方法声明为请求类的实例?,php,laravel,laravel-5,Php,Laravel,Laravel 5,有一些控制器: namespace App\Http\Controllers; use Illuminate\Http\Request; class UsersController extends Controller { public function store (Request $request1) { $request2 = new Request(); } .... 这里$request1和$request2对象是不同的 问题:为什么

有一些控制器:

namespace App\Http\Controllers; 
use Illuminate\Http\Request;

class UsersController extends Controller
{

    public function store (Request $request1) {

        $request2 = new Request();

    }
    ....
这里$request1和$request2对象是不同的


问题:为什么它们不一样?以及Laravel如何在内部将请求类的实例传递给存储方法?我认为它类似于:userscoontroller::storenewrequest。这不正确?

您的$request2是新的,因此它仍然是空的

您的$request1已从POST收到数据。。因此,您可以使用如下输入名称调用输入值:

$request1->txt_someinputname1;
$request1->txt_someinputname2;

我认为,因为$request2是您创建的新对象,并且与$request1没有任何关联,因为$request1在您将某些内容发布到存储函数中时会捕获参数。不管怎样,我不知道你为什么要为什么创建一个新的请求?当然它们不一样。store方法接收已经创建的$request1,并在该方法中创建一个全新的对象,其中没有数据。为什么你认为它们应该是一样的?@vietnguyen09-我不想在请求内部使用second,我只想了解请求类的实例是如何在内部传递给方法的。你没有回答我的问题,但无论如何-。Laravel只调用控制器操作并将当前请求作为第一个参数传递。您正在创建一个没有数据的请求的全新实例。我发布的链接向您展示了它是如何在内部实现的。