$smtpHost = $v['smtpHost']; $smtpPort = $v['smtpPort']; $smtpUser = $v['smtpUser']; $smtpPwd = $v['smtpPwd']; $platAccount = $v['platAccount']; if (!empty($toEmailSend)) { continue; } //格式化邮件内容 $title = str_replace("<wedo:recordId>", $recordId, $email_title); $content = str_replace(array('<wedo:recordId>', '<wedo:userId>', '<wedo:markTime>', '<wedo:trackNum>', '<wedo:trackUrl>', '<wedo:userEmail>', '<wedo:userName>', '<wedo:sendTime>'), array($recordId, $toUserId, $markTime, $trackNum, $trackUrl, $userEmail, $userName, $sendTime), $email_body); $log .= date('Y-m-d H:i:s') . "==={$recordId}==={$toUserId}==={$toUserEmail}==="; echo date('Y-m-d H:i:s') . "==={$recordId}==={$toUserId}==={$toUserEmail}===\n"; //发邮件 $emailData = array('smtpHost' => $smtpHost, 'smtpPort' => $smtpPort, 'smtpUser' => $smtpUser, 'smtpPwd' => $smtpPwd, 'title' => $title, 'content' => $content, 'toUserEmail' => $toUserEmail, 'toUserId' => $toUserId, 'userEmail' => $userEmail, 'userName' => $userName, 'trackNumber' => $trackNum, 'retryCount' => $retryCount); $result = TrackEmailStatModel::sendTrackEmail($emailData); $log .= "SES状态数据:" . json_encode($result) . "\n"; print_r($result); $email_flag = $result['sendFlag']; $MessageId = $result['MessageId']; $RequestId = $result['RequestId']; //保存邮件发送记录 $emailStat = array('trackNumber' => $trackNum, 'content' => $content, 'platAccount' => $platAccount, 'MessageId' => $MessageId, 'RequestId' => $RequestId, 'is_success' => $email_flag, 'addTime' => time()); $stat_flag = TrackEmailStatModel::saveTrackEmail($emailStat); $log .= date('Y-m-d H:i:s') . "==={$i}/{$totals}==={$trackNum}===邮件发送状态:{$email_flag}===邮件记录状态:{$stat_flag}\n"; echo date('Y-m-d H:i:s') . "===={$i}/{$totals}==={$trackNum}===邮件发送状态:{$email_flag}===邮件记录状态:{$stat_flag}\n"; sleep($sleepTime); $i++; } $log .= date('Y-m-d H:i:s') . "==={$totals}封邮件已推送完毕!\n\n"; echo "\n\n" . date('Y-m-d H:i:s') . "==={$totals}封邮件已推送完毕!\n\n";