27.1. PHP: Функция отправления почты
Чтобы передать данные, полученные при работе на Web-pecypce, используют функцию с подходящим для этого названием — mail().
Она является очень полезной при работе. Самое главное, на что необходимо обра щать внимание — на заполнение всех параметров функции. Это прежде всего поможет определить, откуда получено то или иное сообщение и с чем связано само его отправление. Функция mail() имеет следующий синтаксис:
bool mail (string to, string subject, string message [, string additional_headers[, string additional_parameters]])
Строка string to указывает, кому вы собираетесь отправлять сообщение. Здесь записывается адрес получателя сообщения, например your_name@domain_name. ru. После этого идет строка string subject, равносильная строке «Тема» при отправлении обычного письма, т. е. здесь указывается то, о чем будет вестись речь в вашем письме. На месте string message указывается пересылаемое сообщение, например «С днем Рождения!!!». В четвертом параметре — additional headers можно указать любой атрибут заголовка письма, например Content-Type: text/html; charset = windows-1251.
Функция используется в РНР 3 и PHP 4.
Приведем пример применения функции mail():
mail("mail@domen.ru", "Поздравление", "Поздравляю с днем рождения!" "Content-type:text/html; charset = windows—1251");
Функция позволяет отправлять сообщение «Поздравляю с днемровдения!», в строке «Тема» будет написано «Поздравление», письмо будет отправлено на адрес при этом содержание текстовым файлом, либо
как HTML. Это для того, чтобы получатель не имел каких-либо проблем с прочтением. Проблемы с кодировкой также должны так как строкой charset = windows-1251 мы указали необходимую кодировкудля письма.
Как правило, задание значений параметрам осуществляется через переменные, именно это и делает язык очень удобным. Покажем, как можно этот же пример записать в другом виде, при этом результат работы будет аналогичным:
$to = "mail@domen.ru";
$subject = "Поздравление";
$message = "Поздравляю с днем рождения!";
$header = "Content-type:text/html; charset = windows—1251";
mail($to, $subject, $message, $header);
После задания значений переменным $to, $subject, $message, $header мы просто вставляем их в функцию mail(). Результат работы этого скрипта будет аналогичным предыдущему. Именно такой способ является наиболее рациональным и удобным при программировании.
Сама функция mail() возвращаетбулевыйтип, что позволяет проверить правильность отправки сообщений. При возникновении какой-либо ошибки функция просто возвращает false, в противном случае — true.
В качестве вносимых параметров существует еще и пятый параметр, который мы рассмотрим далее (см. п. 27.2). Если не указывать четвертый $header или пятый параметры, никакой ошибки это не вызовет. Эти параметры используются на усмотрение самих программистов, чтобы просто подробнее описать сообщение, посланное сервером.