laravellaravel 发送邮件件,mail:send方式,出现一个问题,求助,贴图如下

laravel发送邮件,mail:send方式,出现一个问题,求助,贴图如下_百度知道集成了库进行,配置文件位于config/mail.php:、
'driver' =& env('MAIL_DRIVER', 'smtp'),
'host' =& env('MAIL_HOST', 'smtp.mailgun.org'),
'port' =& env('MAIL_PORT', 587),
'from' =& ['address' =& null, 'name' =& null],
'encryption' =& env('MAIL_ENCRYPTION', 'tls'),
'username' =& env('MAIL_USERNAME'),
'password' =& env('MAIL_PASSWORD'),
'sendmail' =& '/usr/sbin/sendmail -bs',
'pretend' =& false,
& 以上的参数& 我们都会有详细的讲解!& 请继续往下看!
driver用于配置默认的邮件发送驱动,Laravel支持多种邮件驱动方式,包括smtp、gun、Maildrill、Amazon SES、mail和sendmail,Mailgun和Amazon
SES都是收费的,Maildrill目前不支持中国区用户,这三个都是第三方邮件服务。mail驱动使用PHP提供的mail函数发送,sendmail驱动通过Sendmail/Postfix(Linux)提供的命令发送邮件,smtp驱动通过支持E的SMTP发送邮件。
注:ESMTP即Extended SMTP, 是对标准 SMTP 协议进行的扩展,它与 SMTP 服务的区别仅仅是,使用 SMTP 发信不需要验证用户帐户,而用 ESMTP 发信时,服务器会要求用户提供用户名和密码以便验证身份。
就目前状况来看,使用smtp是最明智的选择,mail不安全,sendmail需要安装配置Sendmail/Postfix,其他要么付费要么不能用(汗!)。下面其它配置的说明都基于driver是smtp。
接下来其他的配置都好理解,host是邮箱所在主机,比如我们使用163邮箱,对应值是,使用QQ邮箱的话,对应值是。
port用于配置邮箱发送服务端口号,比如一般默认值是25,但如果设置SMTP使用SSL加密,该值为465。
from配置项包含address和name,前者表示发送邮箱,后者表示发送邮件使用的用户名。
encryption表示加密类型,可以设置为null表示不使用任何加密,也可以设置为tls/ssl。
username表示邮箱账号,比如
password表示上述邮箱登录对应登录密码。
sendmail是在设置driver为sendmail时使用,用于指定sendmail命令路径。
pretend用于配置是否将邮件发送记录到日志中,默认为false则发送邮件不记录日志,如果为true的话只记录日志不发送邮件,这一配置在本地开发中调试时很有用。
&// 接下来我们要做的就是要在控制器写代码了!
use Mail;
在方法中需要写以下!
public function send()
$name = '学院君';
$flag = Mail::send('emails.test',['name'=&$name],function($message){
$to = '';
$message -&to($to)-&subject('测试邮件');
if($flag){
echo '发送邮件成功,请查收!';
echo '发送邮件失败,请重试!';
//Mail::send需要传递三个参数,第一个是邮件视图,第二个是传入视图的数据,第三个是一个闭包,该闭包中定义了收件人、抄送人(如果有的话)、邮件主题、等信息。邮件的主体内容位于局部视图中,下面我们就来定义这个局部视图,在resources/views/admin目录下新建test.blade.php,编辑其内容如下:
//& 以上是单纯的文本发送/!& 但是还不是带有图片发送的格式!& 需要发送图片的格式的!& 需要继续往下继续看!
图片的发送!
//这里是view成! 需要一下这么输入!
{{$name}},这是一封测试邮件
&img src=&{{$message-&embed($imgPath)}}&&
//& 图片的发送和文本的发送& 没有什么其他不一样的!&& 而是在参数后面多写了一个参数! 一个简单的图片发送的文件就好了!
$name = '学院君';
$imgPath = 'http://laravelacademy.org/wp-statics/images/carousel/LaravelAcademy.jpg';
$flag = Mail::send('emails.test',['name'=&$name,'imgPath'=&$imgPath],function($message){
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:488次
排名:千里之外你的浏览器禁用了JavaScript, 请开启后刷新浏览器获得更好的体验!
求助啊!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!加粗文字
我这边也是:
Expected response code 250 but got code &530&, with message &530 5.7.1 Authentication required
看信息应该是认证出了问题,smtp服务器端返回“530 5.7.1 Authentication required‘。
有没有哪位大神可以帮忙解决下啊
楼上的,你这个问题是怎么解决的? 我也出现了这样的问题
要回复问题请先或
浏览: 2952
关注: 3 人如何在 Laravel 中使用 SMTP 发送邮件(适用于 163、QQ、Gmail 等) - 推酷
如何在 Laravel 中使用 SMTP 发送邮件(适用于 163、QQ、Gmail 等)
Laravel 提供了非常简单的邮件发送 API,但是文档却不是太清晰,再加上它采用传递闭包(回调函数)的方式调用,导致邮件发送的使用门槛偏高。
Laravel 4 和 Laravel 5 的邮件发送使用方式完全一致。Laravel 5 的邮件发送中文文档在:
本文中,我将以 163 邮箱为例,展示如何用 Laravel 内置的邮件发送类来发送邮件。
修改邮件发送配置。4.2 在 app/config/mail.php,5 在 config/mail.php,修改以下配置:
'host' =& '',
'port' =& 25,
'from' =& array('address' =& '***@', 'name' =& 'TestMail'),
'username' =& '***@', // 注意,这里必须和上一行配置里面的邮件地址一致
'password' =& '****',
在控制器或者模型里,调用以下代码:
$data = ['email'=&$email, 'name'=&$name, 'uid'=&$uid, 'activationcode'=&$code];
Mail::send('activemail', $data, function($message) use($data)
$message-&to($data['email'], $data['name'])-&subject('欢迎注册我们的网站,请激活您的账号!');
邮件视图为 views/activemail.blade.php:
&!doctype html&
&html lang=&zh-CN&&
&meta charset=&UTF-8&&
&meta http-equiv=&X-UA-Compatible& content=&IE=edge&&
&a href=&{{ URL('active?uid='.$uid.'&activationcode='.$activationcode) }}& target=&_blank&&点击激活你的账号&/a&
已发表评论数()
请填写推刊名
描述不能大于100个字符!
权限设置: 公开
仅自己可见
正文不准确
标题不准确
排版有问题
主题不准确
没有分页内容
图片无法显示
视频无法显示
与原文不一致你的浏览器禁用了JavaScript, 请开启后刷新浏览器获得更好的体验!
我最开始用Mail::queue()发送邮件,但是这个老是报超时,而且还要刷选好几次才能发送一次,我在想直接利用queue可不可以,我新健了command
sendmail!如图[
]采用的queue是database,在控制器中$mail=
$mail->content=$
$mail->filepath=$
Bus::dispatch(
new SendEmail($mail)
);发送请求,数据库中的job表会同时添加一条数据,我用artisan queue:work 命令 提示swif_ioexception the path cannot be empty.邮件也没有发送,不知道为什么,求解答
要回复问题请先或
浏览: 2699
关注: 2 人}

我要回帖

更多关于 laravel5.4发送邮件 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信