PHP将选择查询输出作为数组

时间:2012-09-27 15:09:13

标签: php mysql

我有一个选择查询说

 $query = "select name from class";
 $equery = mysql_query($query);
 $v = mysql_fetch_array($equery);    
 print_r($v['name']);

我的数据库中有10条记录,但总是只得到一个值。有任何替代方法可以检索数组格式的列。

6 个答案:

答案 0 :(得分:2)

你需要循环它。

$query = "select name from class";
$equery = mysql_query($query);
$result = array();
while ($row = mysql_fetch_array($equery)) {
    $result[] = $row['name'];
}
print_r($result);    

答案 1 :(得分:1)

请勿将mysql扩展程序用作it has been deprecated。 您应该mysqli_result::fetch_all使用mysqli extensionPDOStatement::fetchAll使用PDO extension

答案 2 :(得分:0)

将所有内容放入 LOOP

<?php

  while($v = mysql_fetch_array($equery);) {
  print_r($v['name']);
}
?>

答案 3 :(得分:0)

 $query = "select name from class";
 $equery = mysql_query($query);

 $v=null;
 $index=0;
 while($row = mysql_fetch_array($equery,MYSQL_ASSOC)){
     $v[$index++]=$row;
 }    

答案 4 :(得分:0)

除了正确的其他答案之外:您不应该使用任何旧的mysql命令,因为它们正在被折旧。您应该查看mysqliPDO

答案 5 :(得分:0)

你基本上不需要循环它,如果输出中只有一行,这种方式很好,但如果你有更多,你需要循环。

$a=mysql_fetch_array($resource)

返回第一行, 循环它

while($row=mysql_fetch_assoc($resource))
{
echo ($row['name']);
}

mysql_fetch_assoc以关联数组的形式返回输出。我一直在所有mysql帖子上说这个,尝试切换到PDO。 不建议使用mysql_query。这意味着它的支持很快就会被删除。

http://php.net/manual/en/function.mysql-query.php