1

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

查询后,$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];

提前致谢。

4

3 回答 3

4

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

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

于 2012-05-29T20:06:20.090 回答
2

$row[0] 将是结果中第一列的值。如果你使用mysql_fetch_assoc($result ) 你将有一个数组形式:

array(column_name => column_value);

例如

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

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

$row = mysql_fetch_object($result);
$value = $row->column_name
于 2012-05-29T20:04:59.163 回答
2

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

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

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

于 2012-05-29T20:06:13.070 回答