【PHP】mail関数を使う前に準備しておくこと
PHP を使ってメールを送信するには mail() 関数を使用して送信します。
mail() 関数の引数を確認してみると
詳細は、下記URLを参照してください。
http://php.net/manual/ja/function.mail.php
・メールの受信者。
・送信するメールの表題。
・送信するメッセージ。
を設定することになります。
メールの送信者を指定する引数がありません。
よく解説をみてみると
注意書きのところに以下のように書いてあります。
「メールを送信する際には、必ず From ヘッダが含まれていなければなりません。
additional_headers パラメータで指定するか、 あるいは php.ini にデフォルト値を指定します。」
また、変更履歴を見てみると
4.3.0(Windows のみ)から
すべてのカスタムヘッダ(From、Cc、Bcc や Date など)がサポートされるようになったみたいですね。
パラメータで指定するのは簡単だと思いますので
ここでは、php.ini にデフォルト値を設定する手順を書いておきます。
まずは、php.ini をテキストエディタで開いて、検索で [mail function] を検索します。
991行目付近にあると思います。
[mail function]
; For Win32 only.
; http://php.net/smtp
SMTP = localhost
; http://php.net/smtp-port
smtp_port = 25
; For Win32 only.
; http://php.net/sendmail-from
;sendmail_from = me@example.com
; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
; http://php.net/sendmail-path
;sendmail_path =
Windows の場合には、SMTP,smtp_port,sendmail_from を自身の環境に応じた値を指定します。
sendmail_from は、先頭のコメントを外し忘れないようにしましょう。
編集できたらファイルを保存して、Apacheなどのウェブサーバーを一旦再起動しましょう。