Php 使用foreach循环发送多封电子邮件

Php 使用foreach循环发送多封电子邮件,php,Php,我正试图通过for循环发送多封电子邮件,因此我不必担心隐藏所有其他电子邮件,但每次我测试它时,它都会继续发送数组中的最后一封电子邮件,并且完全忽略了名字和姓氏 下面是每个数组元素如何读取“firstname lastname”(“firstname lastname”) 代码如下: $to = $_POST['to']; $from = "$sender"; $subject = $_POST['subject']; $message = $_POST['message']; $i = "";

我正试图通过for循环发送多封电子邮件,因此我不必担心隐藏所有其他电子邮件,但每次我测试它时,它都会继续发送数组中的最后一封电子邮件,并且完全忽略了名字和姓氏

下面是每个数组元素如何读取“firstname lastname”(“firstname lastname”)

代码如下:

$to = $_POST['to'];
$from = "$sender";
$subject = $_POST['subject'];
$message = $_POST['message'];
$i = "";
if($to == "Mass email"){
    $sql =("SELECT * FROM `$table5`");
    $res = mysqli_query($con5, $sql) or die (mysqli_error());

    $adresses = [];
    while($row = mysqli_fetch_assoc($res)){
        $email = $row['firstname'] . " " . $row['lastname'] . " <" .    $row['email'] . ">";
        $adresses[] = $email;
    }

    foreach($adresses as $value){
        if(empty($_FILES['file'])){
            $mbox = imap_open("{mail.server.com:993/novalidate-cert/imap/ssl}", "$eun", "$epw");
            $sent_mass_1 = mail($value, $subject, $message, "From: $from");
            if($sent_mass_1){
                    imap_append($mbox, "{mail.server.com:993/novalidate-cert/imap/ssl}INBOX.Sent"
                    , "Date: $date\r\n"
                    . "To: " . $value . "\r\n"
                    . "From: $from\r\n"
                    . "Subject: $subject\r\n"
                    . "\r\n"
                    . "$message\r\n"
                );
            }
        }
    }

我刚刚开始学习php数组,还有很多东西要学刚过一会儿。所有内容都显示了吗?当使用print\r时,所有的地址都会显示出来。数组([0]=>firstname lastname[1]=>firname lastname等…当我执行foreach循环时,我得到的只是数组中的最后一个条目,它将被发送,但根据foreach循环,数组中有项目的次数应该是多少。但是,我没有以我应该循环的方式获得所有数据,我得到了firstname@MISSING_DOMAIN当我尝试在电子邮件标题中获取收件人。我修复了仅获取数组中最后一封电子邮件的错误。我在foreach循环中回显数组中的每个元素时获取整个电子邮件地址。我尝试对封装电子邮件的<和>使用htmlspecialchars函数,但邮件函数不起作用。我在本地服务器上尝试了它它工作正常,但不能在godaddy服务器上运行