我在MailTrait.php中创建了一个特征,以下是我的代码
angular.module('baseApp').controller('dataProcessor', function($scope, $http) {
$scope.getDataFromDb = function(key) {
$http.get('/trm/get_data_from_database?key='+key).then(function(response) {
$scope.processData(response.data.block);
}, function errorCallback(response) {
console.log('Failed')
});
};
});
从我的控制器调用函数fn_send_mail()并传递参数如下
namespace App\Traits;
use Mail;
trait MailTrait
{
public function fn_send_mail($arr_recepients, $str_subject, $str_content)
{
Mail::send('mail.mailsample', ['content' => $str_content], function($message)
{
$message->to($arr_recepients);
$message->from('abc.org', 'abc');
$message->subject($str_subject);
});
if(Mail:: failures())
return false;
else
return true;
}
}
我收到此错误
$status = $this->fn_send_mail(['123.gmail.com'],'hai', 'hai');
请帮帮我!!
答案 0 :(得分:1)
您应该将$arr_recepients
传递给回调块
Mail::send('mail.mailsample', ['content' => $str_content], function($message) use ($arr_recepients, $str_subject)
{
$message->to($arr_recepients);
$message->from('abc.org', 'abc');
$message->subject($str_subject);
});
答案 1 :(得分:-1)
Mail::send
的第三个参数是一个闭包,它在范围内没有$arr_recepients
,也没有主题。您需要使用use
。试试这个
Mail::send('mail.mailsample', ['content' => $str_content], function($message) use ($arr_recepients, $str_subject)
{ //...