【问题标题】:Laravel email TemplatesLaravel 电子邮件模板
【发布时间】:2021-09-21 21:32:04
【问题描述】:

您好,我想发送由管理员从表单(带有占位符)创建/修改的模板呈现的电子邮件。如下例所示,我想同时将其发送给 100 个用户时间,我不知道怎么做,你能帮忙吗?

Hi { { name } }, 

email: {{email } }

phone: { { phone } }

我的控制器:

    public function mailSend(Uye $uye, IcerikSablon $icerikSablon){
    $dil_id=$uye->ulke->dil_id;
    $icerikSablon->load(['translation'=>function($q)use ($dil_id){
        $q->where('dil_id',$dil_id);
    }]);
    $icerik_sablon_icerik=$icerikSablon->translation->icerik;


    $uye_name=$uye->name;
    $uye_phone=$uye->phone;
    $uye_mail=$uye->email;
    $icerik_sablon_icerik=  str_replace('{{name}}', $uye_name, $icerik_sablon_icerik;
    $icerik_sablon_icerik=str_replace('{{phone}}', $uye_phone, $icerik_sablon_icerik);
    $icerik_sablon_icerik=str_replace('{{email}}', $uye_mail, $icerik_sablon_icerik;

    


}

【问题讨论】:

    标签: php laravel email


    【解决方案1】:

    您真的应该查看有关 Laravel 的可邮寄和通知的文档,您似乎缺少一些基本设置。 https://laravel.com/docs/8.x/mail

    来自文档: php artisan make:mail OrderShipped --markdown=emails.orders.shipped

    然后在OrdersShipped 类构造函数中传入你想要动态拥有的参数,并将它们作为变量分配到你的类中。然后,您可以在刀片模板中引用这些变量。

    例如:

    <?php
    
    namespace App\Mail\Users;
    
    use Illuminate\Bus\Queueable;
    use Illuminate\Mail\Mailable;
    use Illuminate\Queue\SerializesModels;
    
    class OrdersShipped extends Mailable
    {
        use Queueable, SerializesModels;
    
        /**
         * someVar
         *
         * @var $someVar;
         */
        protected $someVar;
    
        /**
         * Create a new message instance.
         *
         * @param string $someVar
         *
         * @return void
         */
        public function __construct($someVar)
        {
            $this->someVar = $someVar;
        }
    
        /**
         * Build the message.
         *
         * @return $this
         */
        public function build()
        {
            return $this->from('test@test.com')
                ->subject('Password Reset Request')
    
                // Pass your vars in here using `with`
    
                ->with([
                    'someVar' => $this->someVar,
                ])
                ->view('emails.orders.shipped');
        }
    }
    

    emails.order.shipped刀片中,您将能够引用{{ someVar }}

    【讨论】:

    • 我没有问任何关于邮件发送的问题。我只是问如何发送邮件模板。例如,新注册的新注册模板,订单取消的模板发送都应该在textarea中完成。
    猜你喜欢
    • 2013-12-11
    • 2017-08-17
    • 2021-08-31
    • 1970-01-01
    • 2016-11-03
    • 1970-01-01
    • 2013-08-12
    • 2021-09-12
    • 1970-01-01
    相关资源
    最近更新 更多