报错:
Connection could not be established with host smtp.163.com [
不能正常发送的代码:
<?php
require_once './vendor/autoload.php';
$su = 'register';
$ge = '[email protected]';
$co = 'Please register!';
send_mail($su,$ge,$co);
function send_mail($subject,$getter,$content)
{
$result = false;
$sender = '[email protected]';
$transport = Swift_SmtpTransport::newInstance('smtp.163.com', 465,'ssl')
->setUsername($sender)
->setPassword('yourEmailPassword');
$mailer = Swift_Mailer::newInstance($transport);
$message = Swift_Message::newInstance($subject)
->setFrom(array($sender => 'Chinese Project'))
->setTo($getter)
->setBody($content)
;
$result = $mailer->send($message);
$success = $result ? 0 : 1;
return $result;
}
这个主要原因是使用swiftmailer时没有设置https的选项
发送正常的代码:
<?php
$su = 'register';
$ge = '[email protected]';
$co = 'Please register!';
send_mail($su,$ge,$co);
function send_mail($subject,$getter,$content)
{
$https['ssl']['verify_peer'] = FALSE;
$https['ssl']['verify_peer_name'] = FALSE;
$result = false;
$sender = '[email protected]';
$transport = Swift_SmtpTransport::newInstance('smtp.163.com', 465,'ssl')
->setUsername($sender)
->setPassword('yourEmailPassword')
->setStreamOptions($https);
$mailer = Swift_Mailer::newInstance($transport);
$message = Swift_Message::newInstance($subject)
->setFrom(array($sender => 'Chinese Project'))
->setTo($getter)
->setBody($content)
;
$result = $mailer->send($message);
$success = $result ? 0 : 1;
return $result;
}
报错:
Expected response code 220 but got code “”, with message “””
这个一般是由于encyption配置导致的 错误代码:
<?php
require_once './vendor/autoload.php';
$su = 'register';
$ge = '[email protected]';
$co = 'Please register!';
send_mail($su,$ge,$co);
function send_mail($subject,$getter,$content)
{
$result = false;
$sender = '[email protected]';
$transport = Swift_SmtpTransport::newInstance('smtp.163.com', 465,'tls')
->setUsername($sender)
->setPassword('yourEmailPassword');
$mailer = Swift_Mailer::newInstance($transport);
$message = Swift_Message::newInstance($subject)
->setFrom(array($sender => 'Chinese Project'))
->setTo($getter)
->setBody($content)
;
$result = $mailer->send($message);
$success = $result ? 0 : 1;
return $result;
}
报错:
Connection could not be established with host smtp.163.com [Connection timed out #110]
这个一般是由于阿里云的25端口限制了,不能使用导致的 错误代码:
<?php
require_once './vendor/autoload.php';
$su = 'register';
$ge = '[email protected]';
$co = 'Please register!';
send_mail($su,$ge,$co);
function send_mail($subject,$getter,$content)
{
$result = false;
$sender = '[email protected]';
$transport = Swift_SmtpTransport::newInstance('smtp.163.com', 25,'tls')
->setUsername($sender)
->setPassword('yourEmailPassword');
$mailer = Swift_Mailer::newInstance($transport);
$message = Swift_Message::newInstance($subject)
->setFrom(array($sender => 'Chinese Project'))
->setTo($getter)
->setBody($content)
;
$result = $mailer->send($message);
$success = $result ? 0 : 1;
return $result;
}