Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/290.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 $request变量未定义_Php_Laravel - Fatal编程技术网

Php $request变量未定义

Php $request变量未定义,php,laravel,Php,Laravel,在我的store方法中,我使用$request for request,但是当传递到Mail::send方法时,显示了一个错误,该错误导致未定义的变量request public function store(Request $request) { $user = new User(); $user->add_user($request); $confirmation_code = ['123456']; Mail::

在我的store方法中,我使用$request for request,但是当传递到
Mail::send
方法时,显示了一个错误,该错误导致未定义的变量request

public function store(Request $request)
    {
        $user = new User();
        $user->add_user($request);
        $confirmation_code = ['123456'];
        Mail::send('users.add-user', $confirmation_code, function($message) {
            $message->to($request->get('email'), $request->get('email'))
                ->subject('Verify your email address');
        });
        return redirect('/users')->with('success', ['Thanks for signing up! Please check your email.']); ;
    }
您应该添加
use()
将变量传递到闭包范围:

Mail::send('users.add-user', $confirmation_code, function($message) use($request) {

在Mail::send closure中,必须传递
$request
变量,如下所示:

Mail::send('users.add-user', $confirmation_code, function($message) use ($request) {
    $message->to($request->get('email'), $request->get('email'))
        ->subject('Verify your email address');
});
请尝试此代码

public function store(Request $request)
{
    $user = new User();
    $user->add_user($request);
    $confirmation_code = ['123456'];
    Mail::send('users.add-user', $confirmation_code, function($message) use($request) {
        $message->to($request->email, $request->email)
                ->subject('Verify your email address');
    });
    return redirect('/users')->with('success', ['Thanks for signing up! Please check your email.']); ;
}

在做任何事情之前,在函数体内部检查$request是否有值?您能告诉我们您的答案与@user1191749和@Alexey Mezenin给出的答案之间有什么区别吗?相同的答案,但这有您的全部代码,另一个答案只有部分代码。重要的部分是
使用($request){
我的答案与我们两人的不同之处在于我不能使用get方法来获取用户请求。例如$request->get('email')。我可以使用$request->email。只是想知道为什么OP选择了这个答案,为什么这个答案比我的得票多(3比1)?我的答案是第一个,至少有5-10分钟没有任何答案。而且这个答案也没有告诉任何新的东西。我看到很多这样的事情在发生,我真的很好奇为什么会发生。