カテゴリ: PHP 更新日: 2026/05/12

PHPのメール送信ログの記録方法を完全解説!初心者でも安心して理解できる

PHP の メールの送信ログを記録する方法
PHP の メールの送信ログを記録する方法

先生と生徒の会話形式で理解しよう

生徒

「PHPでメールを送ったあと、本当に送れたか確認する方法はありますか?」

先生

「あります。メール送信の結果を“ログ”として記録すると確認できます。」

生徒

「ログって何ですか?難しそうです…」

先生

「大丈夫です。日記のように、出来事を書き残すだけの仕組みですよ。」

1. PHPのメール送信ログとは?

1. PHPのメール送信ログとは?
1. PHPのメール送信ログとは?

PHPのメール送信ログとは、PHP(ピーエイチピー)でメールを送信したときに、「いつ」「誰に」「成功したか失敗したか」を文字として記録しておく仕組みです。ログは、日本語でいうと記録帳や作業メモのようなものです。

パソコンを触ったことがない人でも、ノートに日付と出来事を書くイメージをすると分かりやすいです。プログラムでは、このノートの代わりにテキストファイルを使います。

2. なぜメール送信ログを記録するのか

2. なぜメール送信ログを記録するのか
2. なぜメール送信ログを記録するのか

PHPでメールを送信するとき、画面上では何も起こらないことがあります。そのため、本当にメールが送れたのか分からないという不安が出てきます。

メール送信ログを残しておけば、「送信成功」「送信失敗」といった結果を後から確認できます。これは、家を出る前に鍵を閉めたかどうかをメモするのと同じで、安心材料になります。

3. PHPでメールを送信する基本

3. PHPでメールを送信する基本
3. PHPでメールを送信する基本

まずは、PHPでメールを送信する基本形を見てみましょう。PHPではmail関数(メール関数)を使います。関数とは、よく使う処理をまとめた便利な道具です。


<?php
$to = 'test@example.com';
$subject = 'テストメール';
$message = 'これはテストメールです';
$headers = 'From: sample@example.com';

mail($to, $subject, $message, $headers);
?>

このコードは、「誰に」「どんな題名で」「どんな内容を」送るかを書いています。ただし、これだけでは送信できたか分かりません。

4. ファイルにログを書き込む方法

4. ファイルにログを書き込む方法
4. ファイルにログを書き込む方法

ログを残すには、ファイルに文字を書くという作業を行います。これは、紙にペンで文字を書くのと同じ考え方です。


<?php
$logMessage = "メール送信を実行しました\n";
file_put_contents('mail.log', $logMessage, FILE_APPEND);
?>

file_put_contentsは、「ファイルに内容を書き込む」という意味です。FILE_APPENDは、追記するという指定で、前の内容を消さずに書き足します。

5. メール送信の成功・失敗をログに残す

5. メール送信の成功・失敗をログに残す
5. メール送信の成功・失敗をログに残す

mail関数は、成功するとtrue(トゥルー)、失敗するとfalse(フォルス)を返します。これは「はい」「いいえ」のようなものです。


<?php
$result = mail($to, $subject, $message, $headers);

if ($result) {
    file_put_contents('mail.log', "送信成功\n", FILE_APPEND);
} else {
    file_put_contents('mail.log', "送信失敗\n", FILE_APPEND);
}
?>

これで、送信結果がログファイルに残るようになります。

6. 日時を一緒に記録して分かりやすくする

6. 日時を一緒に記録して分かりやすくする
6. 日時を一緒に記録して分かりやすくする

ログには、いつ起きた出来事かを書いておくと、とても見やすくなります。これは日記に日付を書くのと同じです。


<?php
$date = date('Y-m-d H:i:s');
file_put_contents('mail.log', $date . " メール送信\n", FILE_APPEND);
?>

date関数は、現在の日時を取得するための便利な道具です。

7. ログファイルの中身を確認する方法

7. ログファイルの中身を確認する方法
7. ログファイルの中身を確認する方法

作成されたmail.logファイルは、メモ帳などで開くことができます。中には、次のような内容が書かれます。


2026-02-09 12:00:00 メール送信
送信成功

このように表示されていれば、PHPのメール送信ログが正しく記録されています。

8. 初心者がつまずきやすい注意点

8. 初心者がつまずきやすい注意点
8. 初心者がつまずきやすい注意点

ログファイルが作成されない場合は、ファイルの保存場所や書き込み権限が原因のことが多いです。これは、ノートを引き出しに入れたまま書こうとしている状態に似ています。

PHPメール送信ログを正しく記録することで、トラブルの原因をすぐに見つけられるようになります。初心者のうちからログを残す習慣をつけることが大切です。

コメント
コメント投稿は、ログインしてください

まだ口コミはありません。

関連記事:
PHP のメール送信の記事一覧へ
新着記事
New1
Gemini
GeminiでPHPコードを学ぶ方法!初心者向けに始め方と学習手順を解説
New2
PHP
PHP のセッション変数を保存・取得・削除する方法
New3
PHP
PHP のコンストラクタ(__construct)とは?使い方を解説
New4
Claude
ClaudeでPythonデバッグを解決する方法!Pythonデバッグのエラーメッセージを長いログから読み解く方法
人気記事
No.1
Java&Spring記事人気No1
Python
Pythonでディレクトリを作成・削除・一覧表示する方法!初心者向けにosとpathlibを使った使い方を解説
No.2
Java&Spring記事人気No2
Gemini
GeminiでPython自動化を始める時の質問文!目的と前提を伝えるコツ
No.3
Java&Spring記事人気No3
PHP
PHP のフォームデータの受け取り($_POST, $_GET)を完全解説!初心者向けガイド
No.4
Java&Spring記事人気No4
Claude
ClaudeにPHPコードをレビューしてもらう方法!安全性と保守性を同時に確認するチェックリスト
No.5
Java&Spring記事人気No5
Python
Pythonで文字列が数値か判定する方法!isdigit()・isnumeric()の違い
No.6
Java&Spring記事人気No6
Gemini
GeminiにPHPエラーを相談する時のコードの貼り方!原因特定を早めるコツ
No.7
Java&Spring記事人気No7
Claude
Claudeを使ったPythonコードレビューの進め方!設計意図と処理の流れを表で確認する質問例
No.8
Java&Spring記事人気No8
PHP
PHP のインストール方法(Windows・Mac・Linux)と開発環境