PHP将查询结果合并为一个字符串

时间:2012-03-22 21:19:50

标签: php

我有一个应用程序搜索数据库并检索3个字段名称,电子邮件地址,年份组。

我将这些放入表格中,并希望有一个mailto:链接,其中包含检索到的所有电子邮件地址,但是用逗号分隔..

例如

这样的东西。

<a href=mailto:" .$row['Email'].  ">"  .$row['Email']. "</a>

,链接实际上如下所示:mailto:john @ yahoo.com,bob @ gmail.com,kyle @ microsoft.com

任何想法?

5 个答案:

答案 0 :(得分:1)

你可以建立一个电子邮件数组,然后崩溃数组:

while ($row = mysql_fetch_row()) {
    $emails[] = $row['Email'];
}

var_dump(implode(',', $emails));

答案 1 :(得分:0)

试试这种方式

<a href="mailto:<?php echo $row['Email'] ?>"><?php echo $row['Email'] ?></a>

这种语法更清晰,只回显你想要的地方的变量而不是回显的整行。

答案 2 :(得分:0)

我认为您需要join()功能。例如:

$mailtolist = join(",",$queryresult);

答案 3 :(得分:0)

直接连接这样的电子邮件:

   // loop over the rows
   $rows = //  resultset
    for ($row in $rows) {
     $email = $row['email'] . ","
    }

   // trim last comma

    // create href
    $desc = "this is the link description"
    href = "<a href=\"mailto:$email\">$desc</a>"

   // or
   <a href="mailto:<?= $email ?>">link description</a>

答案 4 :(得分:0)

根据Mike Purcell的回答,你可以这样做:

<?php
    while ($row = mysql_fetch_row) {
        $emails[] = $row['Email'];
    }
    $emailsString = implode(',', $emails);
?>
<a href="mailto:<?php echo $emailsString ?>"><?php echo $emailsString ?></a>