CakePHPではメールの送信を簡単に実装することが可能です。
もっとも基礎的な、コントローラ内でメール送信を行う方法について解説していきます。
基本のコード(コントローラ内で実装)
以下のように実装します。
//src/Controller/SamplesController.php
use Cake\Mailer\Mailer;
・・・
class SamplesController extends AppController
{
public function mail(){
//メーラ作成
$mailer = new Mailer('default');
//メール設定開始。送信先設定。
$mailer->setFrom(['sample@sample.com' => 'ツール系アプリエンジニアブログ'])
//送信先設定
->setTo('sample@sample.com')
//送信先追加(任意)
->addTo('sample2@sample.com')
//BCC追加(任意)
->addBcc($to2)
//メール題名設定
->setSubject('メール題名')
//本文設定してメール送付
->deliver('メール本文');
}
}
$mailer = new Mailer(‘default’)、としてメーラを作成して、送信先、本文等を設定していく流れとなります。
応用
CommandやCronと組み合わせれば、定期配信メールを送付することも可能です。
Command・Cronの利用方法については、以下のページをご参照ください。
参考
CakePHP 4.x Strawberry Cookbook:Mailer
コメント