PHP回显来自数组

时间:2013-10-07 10:01:53

标签: php mysql arrays

我有这个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

6 个答案:

答案 0 :(得分:1)

$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      = '...';

答案 1 :(得分:1)

这是你的答案

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']);
}

答案 2 :(得分:0)

试试这个

echo implode(',', $emails_list);

在这里,您可以找到完整的详细信息php implode

答案 3 :(得分:0)

implode()函数从数组元素返回一个字符串。

 echo implode(",",$emails_list);

答案 4 :(得分:0)

array_push($emails_list,$contacts2["email"]);

然后打印循环外的$emails_list 可能会解决你的问题

答案 5 :(得分:0)

试试此代码

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>";
}