[英]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.