gpt4 book ai didi

php - 无法将数组从 Php/MySQL 查询传递到 SwiftMailer

转载 作者:行者123 更新时间:2023-11-29 13:19:50 24 4
gpt4 key购买 nike

卡在让 Swift“setTo”接受来自 MySQL 查询的数组上。下面的代码仅发送给结果集/列表中的最后一个人。已经阅读了至少十几个堆栈上的相关线程和 Swift 的文档,但它们似乎只展示了如何对值进行硬编码或做出很多假设。希望有一个更完整的示例,也可以帮助那些不能 100% 掌握 Php 数组并传递到 Swift 的其他人。

[...php connection code...]
// query email addresses
$sql = 'select emailaddress from customerlist;';
$result = mysql_query($sql );
if($result === FALSE) {
die(mysql_error()); // ToDo: better error handling
}

// create array from results
$cDistribArray = array();
while($rowEmail = mysql_fetch_assoc($result)) {
$cDistribArray = $rowEmail['emailaddress'];
}

[edit: issue was code above, CORRECTED below, thanks Sven]
// create array from results
$cDistribArray = array();
while($rowEmail = mysql_fetch_assoc($result)) {
$cDistribArray[] = $rowEmail['emailaddress'];
}


[...skip to Swift message create code...]

$message = Swift_Message::newInstance('Subject')
->setFrom(array('sender@yourserver.com' => 'Sender Name'))
->setTo($cDistribArray)
->setBody($cEmailBody,'text/html');

我确信我对数组做错了,但在阅读了许多关于如何创建数组和 Swift 的文章以及一个装满测试消息的收件箱后,当我硬编码时,这些消息只有多个地址。 。卡住!感谢您提供的任何帮助。

最佳答案

这会用当前获取的邮件地址覆盖以前的每个结果:

$cDistribArray = $rowEmail['emailaddress'];

你可能想要这样的东西:

$cDistribArray[] = $rowEmail['emailaddress']; // Add new mail address to the array

关于php - 无法将数组从 Php/MySQL 查询传递到 SwiftMailer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21005751/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com