【PHP8.x】mail関数の使い方

作成日: 更新日:

mail関数は、PHPスクリプトから電子メールを送信する機能を提供する関数です。この関数を使用すると、プログラム上で指定した宛先に、件名と本文を含むシンプルなテキストメールを送ることができます。

メールを送信するために、少なくとも宛先のメールアドレス、メールの件名、そしてメールの本文を引数として指定する必要があります。加えて、送信元(From)、CC(Carbon Copy)、BCC(Blind Carbon Copy)などの追加ヘッダー情報をオプションで設定することも可能です。

mail関数は、PHP自身が直接SMTP(Simple Mail Transfer Protocol)サーバーと通信するのではなく、PHPが動作しているサーバーにインストールされているメール転送エージェント(MTA)を利用してメールの送信を依頼します。このため、メール送信の成否や詳細な挙動は、PHPの設定(php.ini)やサーバーに設定されたMTAの設定に大きく依存します。

関数は、メールの送信処理が正常にキューに追加された場合はtrueを、何らかの理由で失敗した場合はfalseを返します。しかし、trueが返されたとしても、メールが最終的に受信者に届くことを保証するものではありません。添付ファイルやHTML形式のメール、SMTP認証を伴うメールなど、より複雑な要件を持つメール送信には、このmail関数だけでは対応が難しいことが多く、通常はより高機能なメール送信ライブラリの利用が推奨されます。

基本的な使い方

構文(syntax)

mail(string $to, string $subject, string $message, array|string $additional_headers = [], string $additional_params = ""): bool

引数(parameters)

string $to, string $subject, string $message, array|string $additional_headers = [], string $additional_params = ""

  • string $to: 送信先のメールアドレスを指定する文字列
  • string $subject: メール件名を指定する文字列
  • string $message: 送信するメール本文を指定する文字列
  • array|string $additional_headers = []: 追加のメールヘッダーを指定する配列または文字列。例: "From: sender@example.com\r\nReply-To: reply@example.com"
  • string $additional_params = "": mail() 関数に渡す追加のコマンドラインパラメータを指定する文字列

戻り値(return)

bool

メール送信の成否を返します。成功した場合はtrue、失敗した場合はfalseを返します。

【PHP8.x】mail関数の使い方 | いっしー@Webエンジニア