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でdatetime型のデータを年月日時分秒に分割する方法
datetime型を年月日時分秒でそれぞれに分割させたい時に今まではいちいちex ...
-
-
PHPにて「ImageHash」ライブラリを使用し画像の類似度を算出する方法
以前にPHPの「image-comparator」ライブラリで画像の類似度を算出 ...
-
-
CodeIgniter3でCronを実行する方法
CodeIgniter3系で特定の処理をCronで自動実行したかった。以下に設定 ...
-
-
PHPでCSVファイルを出力する際に「①」や「㈱」等の環境依存文字が文字化けする対応方法
過去記事の方法を用いてPHPでCSVファイルを出力すると所々「?」という形に文字 ...
-
-
PHPからDBX Platformを利用してDropbox内のファイルを削除する方法
以前にPHPからDropboxのファイル一覧のデータ(ファイル名や更新日時等)を ...