我之前发送邮件的smtp设置如下,工作正常。
$options = new Mail\Transport\SmtpOptions(array(
'name' => 'gmail.com',
'host' => 'smtp.gmail.com',
'port' => 465,
'connection_class' => 'login',
'connection_config' => array(
'username' => '[email protected]',
'password' => 'password',
'ssl'=> 'ssl',
),
));
$transport = new Mail\Transport\Smtp($options);
$transport->send($mail);
但如果我使用另一个帐户
$options = new Mail\Transport\SmtpOptions(array(
'name' => 'gmail.com',
'host' => 'smtp.gmail.com',
'port'=> 465,
'connection_class' => 'login',
'connection_config' => array(
'username' => '[email protected]',
'password' => 'newpassword',
'ssl'=> 'ssl',
),
));
$transport = new Mail\Transport\Smtp($options);
$transport->send($mail);
它给出了如下所示的错误
我做错了什么。请帮忙。我是新来的。
我创建了一个自动加载文件作为mail.local.php
,其中包含以下内容,它对我有用!
return array(
'smtp' => array(
'transport' => array(
'options' => array(
'host' => 'smtp.gmail.com',
'connection_class' => 'plain',
'port' => '587',
'connection_config' => array(
'username' => 'my-gmail-email-d',
'password' => 'my-email-password',
'ssl' => 'tls'
),
),
),
)
);
你能通过改变从465
到587
的端口并删除'connection_class' => 'login'
来检查吗?