在while循环中合并数据并在循环时将其调用到外部

时间:2013-06-27 07:48:05

标签: php mysql arrays

我的收件箱表中有3个数据,即

--------------
| id | value |
--------------
| 1 | test1 |
| 2 | test2 |
| 3 | test3 |
--------------

我想合并所有数据并将其插入一个变量中 例如,我创建$results,当我在while循环外创建echo $results;时 我想要的值和输出是test1test2test3

这是我的最后一个代码

<?php
$query = mysql_query("SELECT * FROM inbox");

while($data = mysql_fetch_array($query)){

$results[] = $data['value'];

}
echo "$results";
?>

,结果只是Array

6 个答案:

答案 0 :(得分:0)

尝试:

SELECT GROUP_CONCAT(inbox.value) as the_values FROM inbox;

在代码方面:

echo $data['the_values'];

答案 1 :(得分:0)

这应该按照你的要求行事:

<?php
$query = mysql_query("SELECT * FROM inbox");

while($data = mysql_fetch_array($query)){

    $results .= $data['value'];

}
echo $results;
?>

结尾$ results将等于test1test2test3

答案 2 :(得分:0)

您可以尝试这样的事情:

<?php

    $query = mysql_query("SELECT * FROM inbox");

    while($data = mysql_fetch_array($query))
    {
        $results .= $data['value'];
    }

    echo $results;

?>

答案 3 :(得分:0)

它打印数组,因为$ results是一个数组。你可能想写:

echo implode($ results);

另外,使用mysqli而不是mysql; - )

答案 4 :(得分:0)

<?php
$query = mysql_query("SELECT * FROM inbox");

while($data = mysql_fetch_array($query)){

$results[] = $data['value'];

}
 $results = implode(" ",$results);
  echo $results;
?> 

答案 5 :(得分:0)

它打印数组,因为它的数组使用foreach后显示结果

<?php
    $query = mysql_query("SELECT * FROM inbox");
    $results = array(); //good habbit
    while($data = mysql_fetch_array($query))
    $results[] = $data['value'];
    foreach($results as $result)
        echo $result['id'].'-'.$result['value'].'<br>' ;
?>

此外,您应该考虑将 mysql _ * 函数更改为PDOMySQLi,因为这些函数已被删除,将在以后的php版本中删除。

相关问题