0

有什么方法可以从 php 邮件功能中找出已发送电子邮件的总数。我的邮件功能在一个while循环中,我想知道已发送电子邮件的数量。

谢谢

4

2 回答 2

4

如果您只想知道在 while 循环中接受投递的邮件数量,请添加一个计数器变量:

$mailsSent = 0;
while($condition) {
    if (mail('foo@example.com', 'My Subject', 'My Message')) {
        $mailsSent++;
    }
}
echo $mailsSent;

对于接受投递的邮件总量,您可以在 php.ini 中配置一个日志文件

mail.log细绳

将记录所有mail()调用的日志文件的路径。日志条目包括脚本的完整路径、行号、To 地址和标题。

参考: http: //php.net/manual/en/mail.configuration.php#ini.mail.log

If you want to know the number of mails which actually got sent, check the sendmail log.

于 2012-06-23T15:20:08.527 回答
1

重新编辑答案!请立即检查。一开始我很困惑!

您可以使用此脚本检查已发送的邮件数量:

<?php
    $count = 0;
    while ($condition) {
        if(mail($to, $subject, $message))
            $count++;
    }
    echo "Totally, $count messages have been sent!";
?>
于 2012-06-23T14:55:04.820 回答