无法计数mysql_fetch _row返回的数组

时间:2012-08-16 13:05:18

标签: php mysql

就像我说的,我无法计算mysql_fetch_row返回的结果:

while ($a = mysql_fetch_row($sql)) {
 $result = count($a);
 echo $result;
}

它只返回(1)为什么?

5 个答案:

答案 0 :(得分:5)

你可以随时使用

$result = mysql_num_rows($sql);

答案 1 :(得分:4)

计算单行(最可能包含单个字段)将返回1 - 正如它应该的那样。如果您想在获取结果之前获取行数,请查看mysql_num_rows(),或者 - 如果您想要跟进自己的方法 - 请执行类似

的操作
$count=0;
while ($a = mysql_fetch_row($sql)) {
 //Do something with the result

 $count++;
}
echo $count;

答案 2 :(得分:3)

答案 3 :(得分:3)

因为您只获取1行并尝试计算它 - 尝试mysql_num_rows

答案 4 :(得分:2)

mysql_fetch_row的返回值是当前行的列值数组。因此,$result是列数,而不是行数。要获得行数,可以使用mysql_num_rows函数。

BTW:不要使用那个旧的mysql库,使用mysqli或PDO。