WEB start

Компьютеры. Интернет. Профессиональное обучение. 055-966-10-17

hit 
counter

PHP программирование

Наши преимущества

  • Наши программы обучения ориентированы на конкретного слушателя. Вы можете обучаться по одной из предложенных Вам программ, а можете самостоятельно составить, откорректировать, откорректировать свою персональную программу обучения. Преподаватель, консультант помогают Вам сориентироваться в материале курса при выборе программы обучения.
  • Обучение индивидуальное. Преподаватель проводит занятие только для Вас, ориентируясь на Ваши возможности, предыдущие знания и опыт, скорость восприятия нового материала.
  • Вы учитесь в удобное для Вас время, в удобной для Вас форме, может быть выбран гибкий график занятий, в соответствии с Вашими возможностями и пожеланиями.
  • Обучение проводится дистанционно. Вы можете обучаться, сидя за Вашим компьютером дома или на работе, не тратя время на поездки к месту обучения.


Регистрация на сайте

PHP работа с почтой (E-Mail)

Электронная почта (E-Mail) в PHP

Функция mail()

Самый простой способ посылать почту из программы на PHP - функция mail().

Аргументы функции:

mail ( $to , $subject , $message [, $additional_headers [, $additional_parameters ]] )

Пример:

<?php $to = Адрес электронной почты защищен от спам-ботов. Для просмотра адреса в вашем браузере должен быть включен Javascript.'; $subject = 'the subject'; $message = 'hello'; $headers = 'From: Адрес электронной почты защищен от спам-ботов. Для просмотра адреса в вашем браузере должен быть включен Javascript.' . "\r\n" . 'Reply-To: Адрес электронной почты защищен от спам-ботов. Для просмотра адреса в вашем браузере должен быть включен Javascript.' . "\r\n" . 'X-Mailer: PHP/' . phpversion(); mail($to, $subject, $message, $headers); ?>

Но использование этой функции не всегда удобно и надёжно. Часто удобнее использовать другие билиотеки или классы для работы с электронной почтой из PHP.

Есть целый ряд готовых популярных, проверенных решений, которые упрощают задачу работы с электронной почтой из PHP и дают программисту дополнительные возможности. Например: PHPMailer, SwiftMailer, Zend_Mail, eZcomponents и др..

PHPMailer

PHPMailer - полнофункциональный PHP - класс, который выполняет все необходимые задачи по подготовке и рассылке сообщений по электронной почте. В том числе и с использованием SMTP и кодирования сообщений.

Основные зарактеристики:

  • самый популярный способ для отправки электронной почты в PHP
  • используется многими проектами с открытым исходным кодом: WordPress, Drupal, 1CRM, SugarCRM, Yii, Joomlaи др.
  • интегрированная поддержка SMTP - отправка без локального почтового сервера
  • возможность отправлять электронные письма с несколькими TO, CC, BCC и REPLY-TO
  • многостраничные / альтернативные электронные письма для почтовых клиентов, которые не читают HTML-адрес электронной почты
  • поддержка разных кодировок: UTF-8, 8-битных, base64, двоичных и др
  • аутентификация SMTP с помощью механизмов LOGIN, PLAIN, NTLM, CRAM-MD5 и Google XOAUTH2 через SSL и TLS-транспорт
  • сообщения об ошибках на 47 языках (в том числе Русский, Иврит)
  • поддержка подписей DKIM и S / MIME
  • совместимость с PHP 5.0 и более поздними версиями

Многие разработчики PHP используют в своем коде электронную почту. Единственная функция PHP, которая поддерживает - функция mail (). Тем не менее, он не предоставляет никакой возможности для использования популярных функций, таких как электронные письма и вложения на основе HTML.

Правильно форматировать электронную почту достатчно сложно. Существует множество пересекающихся стандартов, протоколов RFC, требующих жесткой привязки к достаточно сложным правилам форматирования и кодирования. Подавляющее большинство программ, которые можно найти в Интернете, использущих PHP - функцию mail () напрямую, содержат большое количество ошибок, так как ата задача сложна. Также не имеет смысла делать то самостоятельно.

Функция PHP mail() обычно использует локальный почтовый сервер, как правило, с помощью бинарного файла sendmail на платформах Linux, BSD и OS X, однако Windows обычно не включает локальный почтовый сервер. Встроенная в PHPMailer SMTP-поддержка  позволяет отправлять электронную почту на любых платформах ( в том числе: Windows) без локального почтового сервера.

Пример:
<?php header('Content-Type: text/html; charset=utf-8'); require 'PHPMailer-master/PHPMailerAutoload.php'; $mail = new PHPMailer; $mail->CharSet = 'UTF-8'; // Кодировка сообщения $mail->isSMTP(); // Использовать SMTP $mail->Host = 'smtp.test.com'; // SMTP сервер $mail->SMTPAuth = true; // Использовать SMTP регистрацию $mail->Username = Адрес электронной почты защищен от спам-ботов. Для просмотра адреса в вашем браузере должен быть включен Javascript.'; // SMTP пользователь $mail->Password = 'password'; // SMTP пароль $mail->SMTPSecure = 'ssl'; // Разрешить кодировку: ssl или tls $mail->Port = 465; // TCP порт $mail->setFrom(Адрес электронной почты защищен от спам-ботов. Для просмотра адреса в вашем браузере должен быть включен Javascript.', 'Тестировщик почты'); $mail->addReplyTo(Адрес электронной почты защищен от спам-ботов. Для просмотра адреса в вашем браузере должен быть включен Javascript.', 'Тестировщик почты'); $mail->addAddress(Адрес электронной почты защищен от спам-ботов. Для просмотра адреса в вашем браузере должен быть включен Javascript.', 'User'); // Получатель $mail->isHTML(true); // Посылать в формате HTML $mail->Body = 'Текст сообщения'; if(!$mail->send()) { echo 'Message could not be sent.'; echo 'Mailer Error: ' . $mail->ErrorInfo; } else { echo 'Message has been sent'; } ?>