我正在制作一个用于从用户那里收集数据的系统。我知道有些会是垃圾邮件!我只想知道如果电子邮件不正确,邮件函数是否返回 false?
说我有。
<?php
$to = "fake@fake.com";
$header = "From: {$to}";
$subject = "Hi!";
$body = "Hi,'n'nHow are you?";
if (mail($to, $subject, $body, $header)) {
echo("<p>Message successfully sent!</p>");
} else {
echo("<p>Message delivery failed...</p>");
}
?>
如果电子邮件不正确,将打印哪封邮件?
如果它确实返回 false,我希望将一个"标志"与它一起存储在该数据库中,以便管理员可以查看并删除它。
> 不一定。
根据手册,如果接受消息进行传递,mail()
函数将返回true
- 但不保证它将被传递:
如果邮件已成功接受传递,则返回 TRUE,FALSE 否则。
重要的是要注意,仅仅因为邮件被接受 交付,这并不意味着邮件将实际到达预期 目的地。
服务器所能告诉您的邮件是否被接受传递。 除非您写了一个无效的电子邮件地址,否则它是"没有电子邮件",因此服务器会拒绝它,那么不,可悲的是,它只能说"是的,邮件被放在电子邮件中"或"不,它不是"它无法告诉您它是否到达那里, 阅读,否则。
如果您在评论中概述
fake@gmail.com
就邮件系统而言,这是一个有效的电子邮件地址。
消息发送成功!
将显示。邮件功能不保证到达收件人。在你问之前,它不可能检查。