我有一个选择查询说
$query = "select name from class";
$equery = mysql_query($query);
$v = mysql_fetch_array($equery);
print_r($v['name']);
我的数据库中有 10 条记录,但总是只得到一个值。有没有其他方法可以以数组格式检索我的列。
你需要循环它。
$query = "select name from class";
$equery = mysql_query($query);
$result = array();
while ($row = mysql_fetch_array($equery)) {
$result[] = $row['name'];
}
print_r($result);
不要使用mysql
扩展,因为它已被弃用。您应该使用mysqli_result::fetch_all
与mysqli
扩展名,或PDOStatement::fetchAll
与PDO
扩展名。
将所有内容放在一个LOOP中:
<?php
while($v = mysql_fetch_array($equery);) {
print_r($v['name']);
}
?>
$query = "select name from class";
$equery = mysql_query($query);
$v=null;
$index=0;
while($row = mysql_fetch_array($equery,MYSQL_ASSOC)){
$v[$index++]=$row;
}
除了其他正确的答案之外:您不应该真正使用任何旧mysql
命令,因为它们正在被贬值。你应该检查mysqli
或PDO
。
你基本上不需要循环它,如果你只有一行输出,这种方式很好,但如果你有更多,你需要循环。
$a=mysql_fetch_array($resource)
返回第一行,循环
while($row=mysql_fetch_assoc($resource))
{
echo ($row['name']);
}
mysql_fetch_assoc 以关联数组的形式返回输出。我在所有 mysql 帖子上一直这么说,尝试切换到 PDO。 不鼓励使用 mysql_query。这意味着它的支持可能很快就会被删除。