Функции PHP mail()Functions


PHP Mail 参考手册Полное справочное руководство по PHP Mail

Определение и использование

Функция mail() позволяет отправлять электронные письма непосредственно из скрипта.

Возвращает TRUE, если письмо было успешно принято для доставки, иначе возвращает FALSE.

Синтаксис

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

Параметр Описание
в Обязательно. Указывает получателя электронного письма.
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 можно использовать для установки адреса отправителя.


Советы и примечания

Примечание:Следует помнить, что принятие письма к доставке не означает, что письмо достигло пункта назначения.


Пример 1

Отправить простое письмо:

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

// Используйте wordwrap(), если строки длиннее 70 символов
$txt = wordwrap($txt,70);

// Отправка электронной почты
mail("[email protected]","Моя тема",$txt);
?>


Пример 2

Отправить письмо с дополнительными заголовками:

<?php
$to = "[email protected]";
$subject = "Моя тема";
$txt = "Привет, мир!";
$headers = "From: [email protected]" . "rn" .
"CC: [email protected]";

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


Пример 3

Отправка HTML-письма:

<?php
$to = "[email protected], [email protected]";
$subject = "HTML-письмо";

$message = "
<html>
<head>
<title>HTML-письмо</title>
</head>
<body>
<p>Это письмо содержит HTML-теги!</p>
<table>
<tr>
<th>Имя</th>
<th>Фамилия</th>
</tr>
<tr>
<td>Джон</td>
<td>Доу</td>
</tr>
</table>
</body>
</html>
";

// Всегда устанавливайте content-type при отправке HTML-письма
$headers = "MIME-Version: 1.0" . "rn";
$headers .= "Content-type:text/html;charset=iso-8859-1" . "rn";

// Дополнительные заголовки
$headers .= 'From: <[email protected]>' . "rn";
$headers .= 'Cc: [email protected]' . "rn";

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


PHP Mail 参考手册Полное справочное руководство по PHP Mail Другие расширения