繁体   English   中英

PHP回显来自数组的结果

[英]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/ >';

更新2

基于它来自( 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']);
}

尝试这个

echo implode(',', $emails_list);

在这里您将找到php implode的完整详细信息

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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM