You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Laravel中快速发送简易通知邮件至个人Zoho邮箱?

实现Laravel快速发送纯文本通知邮件的方法

当然可以实现,Laravel其实提供了非常简便的纯文本邮件发送方式,完全不需要创建Mailable类、视图或者额外控制器——用Mail门面的raw方法就能搞定,具体步骤如下:

  • 第一步:配置邮件驱动
    先在.env文件里配置好Zoho邮箱的SMTP参数(比sendmail更稳定可控):

    MAIL_MAILER=smtp
    MAIL_HOST=smtp.zoho.com
    MAIL_PORT=465
    MAIL_USERNAME=你的发件邮箱@zoho.com
    MAIL_PASSWORD=你的Zoho邮箱密码(或应用专用密码)
    MAIL_ENCRYPTION=ssl
    MAIL_FROM_ADDRESS=你的发件邮箱@zoho.com
    MAIL_FROM_NAME="你的应用名称"
    

    如果想用sendmail,只需把MAIL_MAILER设为sendmail,并确保服务器上sendmail服务正常运行即可。

  • 第二步:直接调用Mail::raw()发送邮件
    在你需要触发通知的代码位置(比如某个业务逻辑方法、模型事件监听、甚至日志回调里),直接写入以下代码:

    use Illuminate\Support\Facades\Mail;
    
    // 触发通知的逻辑处执行
    Mail::raw('用户执行了罕见操作,请及时查看系统日志。操作时间:' . now()->toDateTimeString(), function ($message) {
        $message->to('你的收件邮箱@zoho.com')
                ->subject('系统罕见操作告警');
    });
    

    这个方法完全不需要创建任何Mailable类或视图,直接传递纯文本内容即可。

  • 测试验证
    可以用Artisan Tinker快速测试邮件是否能正常发送:

    php artisan tinker
    

    然后在tinker里执行上面的Mail::raw()代码段,检查Zoho邮箱是否收到邮件。

  • 进阶:绑定日志事件触发邮件
    如果你想在特定日志级别(比如emergency或alert)触发邮件,可以监听日志事件:
    在app/Providers/EventServiceProvider.php的listen数组里添加:

    'Illuminate\Log\Events\MessageLogged' => [
        'App\Listeners\SendLogNotification',
    ],
    

    然后创建SendLogNotification监听器,在handle方法里判断日志级别,符合条件时调用Mail::raw()发送通知,这样就能自动关联日志触发邮件。

内容的提问来源于stack exchange,提问作者Hashim Aziz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 22:20:40