Laravel 5从一个函数传递Varible到另一个功能

问题描述:

我在控制器编码:Laravel 5从一个函数传递Varible到另一个功能

  $order= Order::find($id); 
     $data = array(
      'name' => $order->customer->name, 
      'email' => $order->customer->email, 
      'no_tel' => $order->customer->no_tel, 
      'date' => Carbon::now('Asia/Kuala_Lumpur'), 
     ); 

     Mail::send('emails.invoice1', $data, function ($message) { 
      $message->from('[email protected]', 'Sales'); 

      $message->to($data['email'], $data['name'])->subject('Your Payment Has Been Accepted'); 

     }); 

的问题是,如何通过邮件发送::方法中的$数据?

谢谢

闭包是函数。函数有它们自己的“范围”,所以它们看不到范围之外的变量。您可以将$data导入关闭范围,但使用关键字use。试试:

Mail::send('emails.invoice1', $data, function ($message) use ($data) { 
    $message->from('[email protected]', 'Sales'); 
    $message->to($data['email'], $data['name'])->subject('Your Payment Has Been Accepted'); 
});