Latest web development tutorials

PHP mail () function

PHP Mail Reference Manual Complete PHP Mail Reference Manual

Definition and Usage

mail () function allows you to send e-mail directly from a script.

If the email is successfully accepted delivery, returns TRUE, otherwise returns FALSE.

grammar

mail(to,subject,message,headers,parameters)

参数 描述
to 必需。规定电子邮件的接收者。
subject 必需。规定电子邮件的主题。注释:该参数不能包含任何换行字符。
message 必需。定义要发送的消息。用 LF(\n)将每一行分开。行不应超过70个字符。

Windows 注释:当 PHP 直接连接到 SMTP 服务器时,如果在消息的某行开头发现一个句号,则会被删掉。要解决这个问题,请将单个句号替换成两个句号:
<?php
$txt = str_replace("n.", "n..", $txt);
?>

headers 可选。规定额外的报头,比如 From、Cc 和 Bcc。附加标头应该用 CRLF(\r\n)分开。

注释:发送电子邮件时,它必须包含一个 From 标头。可通过该参数进行设置或在 php.ini 文件中进行设置。

parameters 可选。规定 sendmail 程序的额外参数(在 sendmail_path 配置设置中定义)。例如:当 sendmail 和 -f sendmail 的选项一起使用时,sendmail 可用于设置发件人地址。


Tips and Notes

Note: You need to remember that e-mail delivery is accepted, does not mean that e-mail arrives at the destination program.


Example 1

Send a simple e-mail:

<?php
$txt = "First line of textnSecond line of text";

// Use wordwrap() if lines are longer than 70 characters
$txt = wordwrap($txt,70);

// Send email
mail("[email protected]","My subject",$txt);
?>


Example 2

Send email with additional header:

<?php
$to = "[email protected]";
$subject = "My subject";
$txt = "Hello world!";
$headers = "From: [email protected]" . "rn" .
"CC: [email protected]";

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


Example 3

Send an HTML e-mail:

<?php
$to = "[email protected], [email protected]";
$subject = "HTML email";

$message = "
<html>
<head>
<title>HTML email</title>
</head>
<body>
<p>This email contains HTML Tags!</p>
<table>
<tr>
<th>Firstname</th>
<th>Lastname</th>
</tr>
<tr>
<td>John</td>
<td>Doe</td>
</tr>
</table>
</body>
</html>
";

// Always set content-type when sending HTML email
$headers = "MIME-版本: 1.0" . "rn";
$headers .= "Content-type:text/html;charset=iso-8859-1" . "rn";

// More headers
$headers .= 'From: <[email protected]>' . "rn";
$headers .= 'Cc: [email protected]' . "rn";

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


PHP Mail Reference Manual Complete PHP Mail Reference Manual