[英]PHP echo results from an array
我有这个PHP代码:
while($contacts2=mysql_fetch_array($rs))
{
//generate the list of emails address in an array
$emails_list[] = $contacts2["email"];
}
所以它把我所有的结果放入一个数组,但是当我在while循环外回显$emails_list
时,它只会显示Array
我如何使其显示为:
result1,result2,result3
等
$emails_list
是一个数组,因此您必须遍历它以打印其值:
foreach ($emails_list as $email) {
print "email: $email";
}
请注意,如果要打印特定值,可以使用$emails_list[index]
。 因此,您可以print $emails_list[0]
。
如果然后要一起打印所有值,请执行以下操作:
echo "(" . implode(',',$emails_list) . ")";
$a=array(1,2,3);
echo "(" . implode(',',$a) . ")";
退货
(1,2,3)
您在http://pastebin.com/BwWZFrzZ中的代码显示您正在使用:
echo 'Email sent to:' . $emails_list . '<br/ >';
这样你就可以打印
echo 'Email sent to: (' . implode(',',$emails_list) . ')<br/ >';
基于它来自( https://github.com/PHPMailer/PHPMailer )的github代码,您需要一次添加一封电子邮件:
//this is some clever **** to do with sending emails with attachments :D
$email = new PHPMailer();
while($contacts2=mysql_fetch_array($rs))
$email->AddAddress($contacts2["email"]);
}
$email->From = '...';
这是你的答案
while($contacts2=mysql_fetch_array($rs))
{
//generate the list of emails address in an array
$emails_list[] = $contacts2["email"];
}
$emails_list = implode(',', $emails_list);
echo "(". $emails_list . ")";
我想你应该这样
$mail->AddAddress('person1@domain.com', 'Person One');
$mail->AddAddress('person2@domain.com', 'Person Two');
使用PHPMailer
,您可以这样做,
while($contacts2=mysql_fetch_array($rs))
{
$mail->AddAddress($contacts2['emails'], $contacts2['name']);
}
implode()函数从数组的元素返回一个字符串。
echo implode(",",$emails_list);
array_push($emails_list,$contacts2["email"]);
然后在循环外打印$emails_list
可能会解决您的问题
试试这个代码
while($contacts2=mysql_fetch_array($rs))
{
//generate the list of emails address in an array
array_push($emails_list,$contacts2["email"]);
}
要显示数组数据,您可以使用print_r检查(仅检查它是否有效)
print_r($emails_list)
您可以创建一个循环来像下面一样逐一获取数据
for(int i=0;i<count($emails_list);$i++)
{
echo $emails_list[$i]."<br>";
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.