前提
PHPMailer というライブラリを利用します。
PHP:v8.3.7
PHPMailer:v6.9.1
PHPMailerのインストール
下記コマンドを実行する。
$ mkdir MailTest && cd MailTest
$ composer require phpmailer/phpmailer
mail.php の内容
MailTestフォルダに下記内容のmail.php を設置します。
<?php
require_once './vendor/autoload.php';
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\SMTP;
use PHPMailer\PHPMailer\Exception;
$mail = new PHPMailer(true);
try {
$mail->SMTPDebug = SMTP::DEBUG_SERVER;
$mail->isSMTP();
$mail->Host = 'SMTPサーバのアドレス';
$mail->SMTPAuth = true;
$mail->Username = 'SMTPサーバへログインする時のユーザ名';
$mail->Password = 'SMTPサーバへログインする時のパスワード';
$mail->SMTPSecure = PHPMailer::ENCRYPTION_SMTPS;
$mail->Port = 465;
$mail->CharSet = PHPMailer::CHARSET_UTF8;
$mail->setFrom('送信元メールアドレス', '送信元の名前');
$mail->addAddress('送信先メールアドレス');
$mail->addReplyTo('返信先メールアドレス(大抵送信元メールアドレスと同一で良い)');
$mail->isHTML(false);
$mail->Subject = 'mail.phpのテスト(Subject)';
$mail->Body = 'mail.phpのテスト(Body)';
$result = $mail->send();
printf("\$result = {$result}\n");
} catch (Exception $e) {
echo $mail->ErrorInfo;
}
結果確認
メーラーで届いたメールの日本語が文字化けしていないことを確認すれば良い。