【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を返します。