在mail()之后使用die()会导致电子邮件无法发送

时间:2018-03-07 11:40:52

标签: php

我有下面的代码,重定向工作。但是,当我在底部有die()命令时,电子邮件不会被发送。没有die()命令,电子邮件就可以了。

有没有办法可以在不停止电子邮件工作的情况下停止php脚本?

$to      = 'hello@nospam.com';
$subject = "Test Subject";
$message = "Test Message";
$headers = 'From: robocop@nospam.com' . "\r\n" .
    'Reply-To: robocop@nosopam.com' . "\r\n" .
    'X-Mailer: PHP/' . phpversion();

mail($to, $subject, $message, $headers);
header('Location:http://nospam.com/home/bouncer.php');
die();

1 个答案:

答案 0 :(得分:-3)

试试这个进行测试。我不认为确实存在这样的问题。

$to      = 'hello@nospam.com';
$subject = "Test Subject";
$message = "Test Message";
$headers = 'From: robocop@nospam.com' . "\r\n" .
    'Reply-To: robocop@nosopam.com' . "\r\n" .
    'X-Mailer: PHP/' . phpversion();

if (mail($to, $subject, $message, $headers)) {
    header('Location:http://nospam.com/home/bouncer.php');
} else {
    echo "Fail";
}
die(); // and use for also exit(); for testing

如果这是真正的问题,这非常有趣。