「PHPの基礎 - メール」の版間の差分
提供: MochiuWiki : SUSE, EC, PCB
ページの作成:「== 概要 == <code>mail</code>関数または<code>mb_send_mail</code>関数を使用して、メールを送信する手順を記載する。<br> <br><br> == ASCIIメ…」 |
|||
| 3行目: | 3行目: | ||
<br><br> | <br><br> | ||
== ASCIIメールの送信 | == ASCIIメールの送信 : mail関数 == | ||
ASCIIメールの送信を行うには、<code>mail</code>関数を使用する。<br> | ASCIIメールの送信を行うには、<code>mail</code>関数を使用する。<br> | ||
bool mail ( string to, | bool mail ( string to, | ||
| 56行目: | 56行目: | ||
mail($to, $subject, $message, $headers); | mail($to, $subject, $message, $headers); | ||
</syntaxhighlight> | |||
<br> | |||
<syntaxhighlight lang="php"> | |||
<?php | |||
$to = 'you@example.com'; | |||
$subject = 'test mail'; | |||
$message = "This is Test mail¥nMulti Line"; | |||
$message = wordwrap($message, 70, "¥n"); | |||
$headers = 'From: my@example.com'."¥r¥n". | |||
'To: you@example.com'."¥r¥n". | |||
'X-Mailer: PHP/Mail'; | |||
if(mail($to, $subject, $message, $headers)) | |||
{ | |||
print('成功'); | |||
} | |||
else | |||
{ | |||
print('エラー'); | |||
} | |||
?> | |||
</syntaxhighlight> | </syntaxhighlight> | ||
<br><br> | <br><br> | ||
2021年2月26日 (金) 02:47時点における版
概要
mail関数またはmb_send_mail関数を使用して、メールを送信する手順を記載する。
ASCIIメールの送信 : mail関数
ASCIIメールの送信を行うには、mail関数を使用する。
bool mail ( string to,
string subject,
string message
[, string additional_headers
[, string additional_parameters]] )
パラメータ: to メールの宛先 subject メールのタイトル message メールの本文 additional_headers 追加ヘッダ additional_parameters 追加パラメータ 戻り値: メール送信が受け入れられた場合はTRUE、それ以外の場合はFALSE
メールの宛先、タイトル、本文を指定してメールを送信する。
以下に、メールの宛先(メールアドレス)の書式を示す。
ただし、Windowsで使用する場合は、User <user@example.com>の形式は使用できない。
user@example.com user@example.com, anotheruser@example.com User <user@example.com> User <user@example.com>, Another User <anotheruser@example.com>
メールのタイトルに指定する文字列は、改行できない。
メールの本文は、複数行の文字列を指定できる。
改行する場合は¥n(LF)を使用する。
なお、各行の長さは70文字を超えてはいけないため、wordwrap関数を使用して70文字以上含まれる行は改行する。
$message = wordwrap($message, 70, "¥n");
追加ヘッダは、From、Cc、Reply-To等のヘッダとして、記述する内容を指定する。
複数のヘッダを追加する場合は、¥r¥n(CRLF)で区切る。
ヘッダの中で、Fromヘッダのみ必須となっている。
引数のadditional_headersは省略可能であるが、php.iniファイルでsendmail_fromを設定していない場合は、Fromヘッダの記述が必要である。
追加パラメータは、sendmail等へパラメータを渡す場合に使用する。
ただし、Windowsの場合は使用しない。
例えば、以下のような記述となる。
$to = 'you@example.com';
$subject = 'Test Title';
$message = "This is Test mail¥nMulti Line";
$message = wordwrap($message, 70, "¥n");
$headers = 'From: my@example.com';
mail($to, $subject, $message, $headers);
<?php
$to = 'you@example.com';
$subject = 'test mail';
$message = "This is Test mail¥nMulti Line";
$message = wordwrap($message, 70, "¥n");
$headers = 'From: my@example.com'."¥r¥n".
'To: you@example.com'."¥r¥n".
'X-Mailer: PHP/Mail';
if(mail($to, $subject, $message, $headers))
{
print('成功');
}
else
{
print('エラー');
}
?>