【发布时间】:2023-03-25 06:41:01
【问题描述】:
我正在尝试使用 laravel 队列
我正在使用以下命令将数据发送到我的队列
$data = array(
'from'=> $mailfromname .'<'.$mailfrom.'>',
'to'=>$toname.'<'.$to.'>',
'subject'=>$subject,
'html'=>$html,
'text'=>$text,
'o:tracking'=>'yes',
'o:tracking-clicks'=>'yes',
'o:tracking-opens'=>'yes',
'o:tag'=>$tag,
'h:Reply-To'=>$replyto
);
比我将数组发送到我的 ExampleJob
Queue::push(new ExampleJob($data));
在我的工作句柄中,我有一个接受 $data 的 curl 函数
所以我的问题是,如果我在不使用作业的情况下发送电子邮件,但当我使用作业时,我看到作业表被填充并且它处理但没有使用 curl 发送电子邮件......任何人都知道为什么那个?
public function handle($data)
{
$session = curl_init(MAILGUN_URL.'/messages');
curl_setopt($session, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
curl_setopt($session, CURLOPT_USERPWD, 'api:'.MAILGUN_KEY);
curl_setopt($session, CURLOPT_POST, true);
curl_setopt($session, CURLOPT_POSTFIELDS, $data);
curl_setopt($session, CURLOPT_HEADER, false);
curl_setopt($session, CURLOPT_ENCODING, 'UTF-8');
curl_setopt($session, CURLOPT_RETURNTRANSFER, true);
curl_setopt($session, CURLOPT_SSL_VERIFYPEER, false);
$response = curl_exec($session);
curl_close($session);
$results = json_decode($response, true);
return $results
}
【问题讨论】: