2017-08-28 13 views
0

私の使命は、私のサイトのユーザーを大量にメールすることです。Laravel&Mailgunでメールを集める方法

私は自分のサイトのすべてのユーザーの電子メールを受け取り、メッセージ、別名一括電子メールを送信したいと考えています。

私は現在、ユーザーが自分のサイトにサインアップしたときに確認メールを送信するために、現在郵便配達サービスを使用しています。以下は私が使用しているコードの例です。

バルクメールを送信するために同様のコードを使用できるかどうかを知りたいと思います。

public function sendEmail($sub) 
{ 
    $user = $this; 
    Mail::send('mail.confirm',['user' => $user, $sub => $sub], function($mail) use ($user,$sub) { 
    $mail->from('[email protected]', 'Website'); 
    $mail->to($user->email, $user->name)->subject($sub . ' Confirm Website Email'); 
    }); 
} 

+0

私はPHP sdk woをどのように知っていませんrksが、Mailgun自体は最大250万人の受信者リストのコンセプトを持っています。最初に追加する必要があります。リストに送信すると、エイリアスがすべての受信者にコピーを送信します。 – NoNameProvided

答えて

0

私は

class SendEmail extends Job implements ShouldQueue 
{ 
    use InteractsWithQueue, SerializesModels; 
    public $data , $email; 

    /** 
    * Create a new job instance. 
    * 
    * @return void 
    */ 
    public function __construct($data,$email) 
    { 
     $this->data=$data; 
     $this->email=$email; 
    } 

    /** 
    * Execute the job. 
    * 
    * @return void 
    */ 
    public function handle() 
    { 

     Mail::send('mail.confirm', [ 
        'title' => $this->data['body'] , 
        'body' => $this->data['body'], 
        , 
       ], function ($message) { 
        $message->from('[email protected]', 'Test Notification'); 
        $message->to($this->email)->subject($this->data['subject'])); 
       } 
       ); 


    } 

} 

以下のようなキューファイルがコントローラ

use App\Jobs\SendEmail; 
class EmailController extends Controller { 

    public function send() { 
     $data = array 
      (
      'title' => 'title', 
      'body' => 'body', 
      'subject' => 'subject' 
     ); 

     $emails=array("[email protected]","[email protected]") 
     foreach($emails as $val){ 
      $this->dispatch(new SendAlertEmail($data, $val)); 
     } 


} 

からそれを呼び出してください、これは

を詰め込むためにキューを使用するためにあなたをお勧めしたいhttps://laravel.com/docs/5.4/queueshttps://scotch.io/tutorials/why-laravel-queues-are-awesome

をご確認ください
関連する問題