PHPでメルマガを配信する方法(BCCで一括送信するパターン)
2024/02/25
PHPでメールマガジンを配信したかった。宛先のメールアドレスはMySQLに保存されているという状況。1件ずつループで送信するのかと思ったけど、BCCで送る方法があるみたい。今回はBCCでの配信方法をメモ。
1件ずつ送信するパターン(2016/04/07追記)
1件ずつ送信するパターンの記事を追加した。
ソースコード
<?php
$to = 'info@hoge.com';
$subject = 'タイトル';
$body = '本文';
$header = 'From: '.$to.'\n';
$header .= 'Bcc: test1@test.com, test2@test.com';
if( mb_send_mail($to, $subject, $body, $header) ){
echo 'success';
}else{
echo 'error';
}
その他
$toは全ての送信先で表示されるので、サイト側のアドレスにするのが無難。
BCCの方はカンマ区切りで複数設定できる。MySQLからループで取り出してカンマ区切りの文字列にし、rtrim($bcc_list, ',')でお尻のカンマのみ外せば良い。
また、配信数が多い場合はタイムアウトが怖いのでset_time_limitで時間制限を解除しておいたほうが良さそう。
set_time_limit
関連記事
-
-
DTIのVPSにCodeigniter3を導入する方法
DTIのVPSにPHPフレームワークのCodeigniter3系をインストールし ...
-
-
Codeigniter4で独自・外部ライブラリの作成と呼び出し方法
Codeigniter4で独自ライブラリを作成し、コントローラー側で呼び出したい ...
-
-
PHPにて短縮URLを展開させて、元のURLを取得する方法
短縮されたURLを展開させて、元のURLを取得したいというケースがあった。方法を ...
-
-
DTIのVPS(PHP5系環境)にCakePHPを導入する方法
他社さんと連携して仕事をする際に「フレームワーク何か使いますか?」と聞かれて「使 ...
-
-
PHPで画像を比較して類似度を算出する「image-comparator」ライブラリの利用方法
PHPで画像の類似度を計測したい。ただ、そのためのロジックが全く分からないためラ ...