查询结果:什么是$ row [0]

时间:2012-05-29 20:02:42

标签: php

我知道这可能听起来像一个编程新手的愚蠢问题,但我只是想确保我理解正确。

查询后,$row[0]代表/结果是什么?

我的理解是否正确$row[0]显示所有结果?

以下是示例:

$query = "SELECT count(commentid) from comments where jokeid = $jokeid";

$result = mysql_query($query);

$row=mysql_fetch_array($result);

if ($row[0] == 0)

{

   echo "No comments posted yet.  \n";



} else

{

   echo $row[0] . "\n";
   echo " comments posted.  \n";

和这一个

$query = "Select count(prodid) from products where catid = $catid";
      $result = mysql_query($query);
      $row = mysql_fetch_array($result);
      if ($row[0] == 0)
      {
         echo "<h2><br>Sorry, there are no products in this category</h2>\n";
      }
      else
      {
         $totrecords = $row[0];

提前致谢。

3 个答案:

答案 0 :(得分:4)

$row[0]将简单地回显数据库中的第一列。

0是第一个,因为PHP(以及大多数编程语言)中的所有数组都是从零开始的 - 它们只是从零开始。

答案 1 :(得分:2)

$ row [0]将是结果中第一列的值。如果您使用mysql_fetch_assoc($result),您将拥有以下格式的数组:

array(column_name => column_value);

e.g。

$row = mysql_fetch_asssoc($result);
$value_column_1 = $row['column_1'];

您还可以使用mysql_fetch_object($result)来获取以列名作为参数的对象。

$row = mysql_fetch_object($result);
$value = $row->column_name

答案 2 :(得分:2)

mysql_fetch_array()从结果集中取出下一个(在您的示例中为第一个)行,并将数据存储在数组$row中。

$row[0]现在代表该行的第一个值。

因此,在您的示例中,变量总是保存结果集第一行的第一个值。