Существует множество способов отправки электронной почты через PHP. Использование внутренней функции mail()
является первым, если вы не используете какой-либо фреймворк. Я предлагаю использовать компонент Zend_Mail в Zend Framework. Я работал с ним, и он работает очень хорошо и предоставляет вам хороший объектно-ориентированный способ отправки писем с помощью PHP. Но если у вас есть причины использовать функцию mail()
, тогда, я думаю, вам может понадобиться знать: PHP mail()
не отправляет электронную почту сам. Он использует другие инструменты для отправки электронных писем. Если вы запускаете свое приложение в Unix-системах, mail()
пытается отправить электронное письмо с помощью программы sendmail, которая обычно устанавливается в большинстве Unix-подобных систем. На платформах Windows не установлен sendmail, поэтому PHP попытается отправить электронное письмо с использованием SMTP-сервера. поэтому вы должны указать PHP, где находится этот SMTP-сервер, и предоставить ему имя пользователя/пароль SMTP-сервера, если таковые имеются. Вы можете сделать это, отредактировав свой файл конфигурации PHP, php.ini
. Этот файл представляет собой текстовый файл конфигурации, который PHP будет использовать при выполнении. Найти файл php.ini
и изменить эти значения в этом файле:
SMTP = localhost
smtp_port = 25
sendmail_from = [email protected]
Если вы не знаете, где ваш php.ini
файл, создать простой PHP файл, как info.php
и поместить этот код в нем:
<?php
phpinfo();
?>
Заполните свою страницу и выполните поиск .ini
. Теперь вы знаете, где находится ваш файл php.ini
.
Можете ли вы показать нам код, который вы пытаетесь использовать для этого? –
Если вы тестируете это локально, убедитесь, что ваша локальная конфигурация smtp установлена ... (проверьте ответ serioys sam) – karlipoppins