我的代码
$headers = 'MIME-Version: 1.0' . PHP_EOL;
$headers .= 'Content-type: text/html; charset=iso-8859-1' . PHP_EOL;
$headers .= 'From: Me <me@gmail.com>' . PHP_EOL;
imap_mail('you@gmail.com','test',"$output","$headers");
有没有办法签收邮件?当我使用上面的代码测试发送电子邮件时,我收到了电子邮件,但我收到了错误
This message may not have been sent by: me@gmail.com Learn more Report phishing
according to gmail他们将签名数据附加到标头以进行身份验证
我正在使用gmail imap发送邮件
$inbox = imap_open($hostname,$username,$password)
or die('Cannot connect to Gmail: ' . imap_last_error());
有没有办法使用php imap验证电子邮件?
答案 0 :(得分:1)
如果您想以Gmail用户身份发送邮件,建议您使用Gmail的SMTP。由于IMAP主要用于从收件箱接收邮件。
以下是如何从Gmail的SMTP发送邮件。
第一
然后
使用SMTP身份验证从PHP发送邮件 - 示例
<?php
require_once "Mail.php";
$from = "Sender <sender@gmail.com>";
$to = "Recipient <recipient@gmail.com>";
$subject = "Hi!";
$body = "Hi,\n\nHow are you?";
$host = "smtp.gmail.com";
$username = "username@gmail.com";
$password = "Gmail Password";
$headers = array ('From' => $from,
'To' => $to,
'Subject' => $subject);
$smtp = Mail::factory('smtp',
array ('host' => $host,
'auth' => true,
'username' => $username,
'password' => $password));
$mail = $smtp->send($to, $headers, $body);
if (PEAR::isError($mail)) {
echo("<p>" . $mail->getMessage() . "</p>");
} else {
echo("<p>Message successfully sent!</p>");
}
?>
使用SMTP身份验证和SSL加密从PHP发送邮件 - 示例
<?php
require_once "Mail.php";
$from = "Sender <sender@gmail.com>";
$to = "Recipient <recipient@gmail.com>";
$subject = "Hi!";
$body = "Hi,\n\nHow are you?";
$host = "ssl://smtp.gmail.com";
$port = "465";
$username = "username@gmail.com";
$password = "Gmail Password";
$headers = array ('From' => $from,
'To' => $to,
'Subject' => $subject);
$smtp = Mail::factory('smtp',
array ('host' => $host,
'port' => $port,
'auth' => true,
'username' => $username,
'password' => $password));
$mail = $smtp->send($to, $headers, $body);
if (PEAR::isError($mail)) {
echo("<p>" . $mail->getMessage() . "</p>");
} else {
echo("<p>Message successfully sent!</p>");
}
?>