Не отправляется почта с помщью функции mail()
Есть шаблон, mail.eml
From: {FROM}
To: {TO}
Subject: {SUBJECT}
Content-type: text/plain; charset=utf-8
{TEXT}
и код, который по идее должен отправлять письмо, но ничего не происходит:
<?php
// Функция отправляет письмо, полностью заданное в параметре $mail. Корректно обрабатываются заголовки To и Subject
function malix($mail) {
// Разделяем тело сообщения и заголовки.
list ($head, $body) = preg_split("/\r?\n\r?\n/s", $mail, 2);
// Выделяем заголовок To.
$to = "";
if (preg_match('/^To:\s*([^\r\n]*)[\r\n]*/m', $head, $p)) {
$to = $p[1]; // сохраняем
$head = str_replace($p[0], "", $head); // удаляем из исходной строки
}
// Выделяем Subject.
$subject = "";
if (preg_match('/^Subject:\s*([^\r\n]*)[\r\n]*/m', $head, $p)) {
$subject = $p[1];
$head = str_replace($p[0], "", $head);
}
// Отправляем почту
mail($to, $subject, $body, trim($head));
}
// Текст письма
$text = 'test text';
// Отправитель письма
$from = '[email protected]';
// Получатель письма
$to = '[email protected]';
// Тема письма
$subject = 'test';
// Считыаем шаблон
$tpl = file_get_contents('../templates/mail.eml');
// Отпрваляем письма в цикле по получателям, если их несколько, а если нет, просто отправляем письмо
$mail = $tpl;
$mail = strtr($mail, [
"{FROM}" => $from,
"{TO}" => $to,
"{SUBJECT}" => $subject,
"{TEXT}" => $text,
]);
malix($mail);
echo "Success!";
и кстати, данный код мне вернул true, но почему то в своем электронном ящике я не обнаружил письма(использовал я свой настоящий, вместо [email protected])
<?php
var_dump(mail("[email protected]", "test", "test")); // bool(true)
?>
Версия PHP: 7.4 Local server: apache2 os: Debian
Если нужно, могу сделать дамп переменных