PHP mail () замена функции? - PullRequest
       5

PHP mail () замена функции?

3 голосов
/ 10 января 2012

Когда я меняю провайдера, мне всегда нужно, чтобы sendmail работал, и это настоящий тормоз.

Существуют ли какие-либо бесплатные провайдеры, которые я могу использовать в своем PHP-коде для отправки тех же переменных, что и коды клавиш для проверки регистрации и прочего?

Я пытался искать в Google, но я нашел только то, что имело генераторы форм, а это не то, что мне нужно.

Ответы [ 4 ]

6 голосов
/ 10 января 2012

Я использую PHPMailer с большим успехом.

3 голосов
/ 10 января 2012

Прямо сейчас Swift Mailer - одно из лучших почтовых решений для PHP.Он очень модульный и может быть легко настроен в соответствии с вашими потребностями.Вы можете определить несколько транспортов (например, в файле конфигурации) и использовать тот, который вам нужен при смене провайдеров.

Вот пример из документов :

require_once 'lib/swift_required.php';

// Create the Transport
$transport = Swift_SmtpTransport::newInstance('smtp.example.org', 25)
  ->setUsername('your username')
  ->setPassword('your password')
  ;

/*
You could alternatively use a different transport such as Sendmail or Mail:

// Sendmail
$transport = Swift_SendmailTransport::newInstance('/usr/sbin/sendmail -bs');

// Mail
$transport = Swift_MailTransport::newInstance();
*/

// Create the Mailer using your created Transport
$mailer = Swift_Mailer::newInstance($transport);

// Create a message
$message = Swift_Message::newInstance('Wonderful Subject')
  ->setFrom(array('john@doe.com' => 'John Doe'))
  ->setTo(array('receiver@domain.org', 'other@domain.org' => 'A name'))
  ->setBody('Here is the message itself')
  ;

// Send the message
$result = $mailer->send($message);
1 голос
/ 10 января 2012

Проблема заключается в том, что многие интернет-провайдеры блокируют соединения через порт 25 (по умолчанию SMTP) с серверами, отличными от их собственных.Связано с блокировкой спама и т. Д.

1 голос
/ 10 января 2012

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

Взгляните на AuthSMTP (тамЕсть много других веб-сайтов, которые предоставляют это), а затем использовать что-то вроде PHPMailer или Swift Mailer для отправки электронной почты с аутентификацией.

...