我正在使用gmail api通过我的php网站发送小型电子邮件活动。 我想知道如何返回已成功发送或未成功发送的消息,并且还捕获了变量中的错误。 (例如,如果电子邮件地址格式不正确或gmail连接出现问题等)
所以我想得到两个变量: $ sent_success = 0或1,取决于返回值。 $ error_msg =“从gmail api捕获到错误消息”
最重要的是,发送邮件后,我想在标签上加上标签,以便将其从gmail发送邮件中删除。
发送消息没有问题。
这是我的代码段:
$service = new Google_Service_Gmail($client);
$fromemail = "someemail@mail.com";
$strRawMessage = "From: fromname <$fromemail> \r\n";
$strRawMessage .= "To: ".$CONTACTS_FNAME." ".$CONTACTS_LNAME." <$RECIPIENT>\r\n";
$strRawMessage .= 'Subject: =?utf-8?B?' . base64_encode($EMAILSUBJECT) . "?=\r\n";
$strRawMessage .= "MIME-Version: 1.0\r\n";
$strRawMessage .= "Content-Type: text/html; charset=ISO-8859-1\r\n";
$strRawMessage .= 'Content-Transfer-Encoding: 8bit' . "\r\n\r\n";
$strRawMessage .= "$EMAILBODY\r\n";
$mime = rtrim(strtr(base64_encode($strRawMessage), '+/', '-_'), '=');
$msg = new Google_Service_Gmail_Message();
$msg->setRaw($mime);
$service->users_messages->send("me", $msg);
答案 0 :(得分:0)
好吧,我用try and catch方法自己解决了:
try {
SEND_MAIL($row['CONTACTS_EMAIL'],$EMAILSUBJECT,$EMAILBODY,$row['CONTACTS_FNAME'],$row['CONTACTS_LNAME']);
} catch (Exception $e) {
$err = $e->getMessage();
}