Я пытаюсь отправить электронное письмо, используя функцию mail() в php.
Я на локалхосте.
Вот мой код:
$result = mail('[email protected]', 'Hello world', 'Some Message');
var_dump($result);
Это дает мне это:
bool(false)
Я столкнулся с этим за последние 2 дня, пожалуйста, помогите!
Моя конфигурация xampp соответствует этому связь.
Могу ли я использовать его с ядром Php, я читал некоторые сообщения о SwiftMailer, есть вещи, связанные с ООП? @ Магнус Эрикссон
Обе эти библиотеки — это просто PHP, не зависящие ни от чего другого (кроме действительного почтового адреса). Просто загрузите его (или используйте композитор) и следуйте их документации. Да, они построены с помощью ООП, как и большинство современных библиотек/кода.
Хорошо ! позвольте мне попробовать PHPMailer, не могли бы вы поделиться чем-нибудь полезным? "@магнус Эрикссон
Могу порекомендовать прочитать документацию. У них там есть всякие примеры.
Я использовал PHPMailer, и это сработало, очень рад разобраться с этим, большое спасибо! @Магнус Эрикссон






Причина в том, что sendmail_from и sendmail_path всегда неверны по отношению к вашей системе в настройках php.ini, даже если почта проходит успешно, но она возвращает false, если путь неверен. Пожалуйста, проверьте тех.
mail()-функция может возвращать false?
Вот моя конфигурация: sendmail_from = [email protected]. sendmail_path = "\"C:\xampp\sendmail\sendmail.exe\" -t"
Я сталкивался с этой проблемой несколько раз только из-за неправильных конфигураций. почему я это утверждаю. Но в этом случае кажется, что конфигурация в порядке. Та проблема решена?
Я бы порекомендовал вам вместо низкоуровневой
mail()-функции использовать проверенную и протестированную почтовую библиотеку, такую как PHPMailer, SwiftMailer или аналогичную. Это не только даст вам более подробный API, но также упростит отладку и сделает ваш код более переносимым, поскольку вы сможете легко использовать какой-либо SMTP-сервер, который рекомендуется и не будет зависеть от каких-либо конфигураций сервера.