は異なる内容で各ユーザーに1通の電子メールを送信しますreminder_date = 'today'のときに行うべきいくつかのタスクがあることを通知します。これはcronジョブによって処理されます。 問題は私がユーザーを抽出して管理しているだけで、簡単にそれらのユーザーに電子メールを送信できますが、電子メール本文に「todo.name」を送信して、その日の予定のタスクを知ることもできます。だから基本的に私は次のテーブルを持っているデータベース
今まで、私は次のようしている:
$users = DB::select()->from('todo')->join('users', 'INNER')->on('todo.user_id', '=', 'users.id') ->where('todo.reminder', '=', 1)->and_where('reminder_date', '=', Date::formatted_time('now', 'Y-m-d'))->and_where('todo.status', '=', 'active') ->execute() ->as_array();
と次と次のコードで
$count = 0;
foreach ($users as $k => $v) {
$count++;
$allemails[] = $v['email'];
$mailsUnique = array_unique($allemails);
}
$max = sizeof($mailsUnique);
for ($i = 0; $i < $max; $i++) {
foreach ($users as $k) {
if ($mailsUnique[$i] == $k['email']) {
$task[$mailsUnique[$i]][] = $k['task'];
} else {
}
}
}
を、私は、各電子メールのために、各タスクとマルチ配列を持っています。そのユーザーに対応する「タスク名」がメール本文として1つのメールを各ユーザーに送信する方法を把握していないようです。例えば
:
array(2) (
"[email protected]" => array(1) (
0 => string(6) "Do something" <--- Task Name
1 => string(6) "Do something else" <--- Task Name
)
"[email protected]" => array(1) (
0 => string(6) "aaaaaa" <--- Task Name
)
)
ありがとう!