脑动力:PHP函数速查效率手册
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.7.2 mysql_num_rows函数:获得结果集中行的数目

【功能说明】

该函数将获得指定的结果集中数据行的数目。该函数只对SELECT语句有效,要获得INSERT、UPDATE或者DELETE语句执行影响到的行的数目,用mysql_affected_rows()函数来实现。

注:如果使用函数mysql_affected_rows()来操作获得结果集中行的数目,只有当结果集中所有的行都被提取完之后,执行该函数才能返回正确的值。

【函数语法】

int mysql_num_rows(resource result)

其中,参数result是执行函数mysql_query()后得到的结果集。该函数的返回值为数值型。

【示例程序】下面使用本例函数获得执行SELECT查询SQL语句后结果集中行的数目。代码如下:

<?php
    //连接MySQL服务器,如果连接失败,则返回错误信息
    $link = mysql_connect("localhost", "root", "123456")or die("connection error: ".mysql_error());
    mysql_select_db("project",$link);
                            //通过打开的连接选择数据库
    $sql = "select * from language";
                            //书写SQL语句,查询数据表中的数据
    $result = mysql_query($sql,$link);  //执行SQL语句
    $rowsnum = mysql_num_rows($result);
                            //获得结果集中数据行的数目
    echo $rowsnum;         //输出执行函数后返回的值
    mysql_close($link);    //关闭打开的连接
?>

以上代码的运行结果如图1.35所示。

图1.35 运行结果

上述代码中,成功地连接了本地的MySQL服务器,使用mysql_num_rows($result);语句从执行SELECT操作产生的结果集中获得数据行的数目。执行的结果是7。