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
関連記事
-
-
複数(PHP / metaタグ / htaccess)の方法で301リダイレクト
サイトのディレクトリやファイル名を大幅に変えるという案件があった。それ自体は問題 ...
-
-
PHPでCookie保存時にPartitioned属性を設定する方法
あるページをブラウザの開発者ツールで見た際に「cookie partitione ...
-
-
PHPでお問い合わせ等のform構築時にCSRF対策を行う方法
他社が制作されたお問い合わせフォームを改修する案件があった。ソースコードを拝見し ...
-
-
CodeIgniter4 & jQueryを用いて同一サイト内でajax通信する方法
CodeIgniter4.4.4 & jQueryを用いて同一サイト内で ...
-
-
PHPでdatetime型のデータを年月日時分秒に分割する方法
datetime型を年月日時分秒でそれぞれに分割させたい時に今まではいちいちex ...