1

我有 2 个邮件功能,如下所示:

mail( $from, '', 'mail1', $headers );
mail( $from, '', 'mail2', $headers );

如果我在 $from 中使用自己的电子邮件地址对其进行测试,有时我会先收到 mail1,有时我会先收到 mail2。我想总是先收到mail1。我尝试在 2 个邮件功能之间设置一个睡眠,但它不起作用。

4

2 回答 2

6

你不能。您接收邮件的顺序不取决于您。邮件可能采用许多路径,并且在此过程中会在任何 SMTP 服务器上延迟。

最好的办法是伪造日期标题,使一封电子邮件看起来比另一封早一分钟发送。大多数邮件客户端将按发送日期排序。不过要小心这一点,不要走得太远。垃圾邮件发送者使用相同的策略,电子邮件提供商知道这一点。

于 2012-04-16T20:20:51.700 回答
1

在您的mail函数执行后,电子邮件的实际交付将留给 Mailservers。也就是说,在从服务器/PHP 代码释放对电子邮件的控制后,您无法控制哪个首先进入收件箱。

阅读邮件传输代理及其运作方式。

于 2012-04-16T20:21:14.713 回答