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

1.7.3 mysql_data_seek函数:移动结果内部的指针

【功能说明】

该函数将结果集内部的指针移动到指定的行数。如果执行成功返回TRUE,否则返回FALSE。

【函数语法】

bool mysql_data_seek(resource result,int row_number)

其中,参数result是一个结果集,该值是执行函数mysql_query()得到的;参数row_number是指定要使指针移动到的行数,该行数是用数字代表的,0代表第一行,而该参数的最大值是mysql_num_row()-1,函数mysql_num_row()的功能是取得结果集中总的数据行数。该函数的返回值为布尔型。

【示例程序】下面使用多个函数的组合,证明本例函数移动结果集中的指针成功。代码如下:

<?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语句
    $arrone = mysql_fetch_row($result);
                        //从结果集中取得一行数据作为枚举数组
    print_r($arrone);  //打印数组的内容
    mysql_data_seek($result,3);     //移动结果集中内部的指针
    $arrtwo = mysql_fetch_row($result);
                        //再次从结果集中取得一行数据作为枚举数组
    print_r($arrtwo);  //打印出数组的内容
    mysql_close($link);//关闭打开的连接
    mysql_close($link);//关闭打开的连接
?>

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

图1.36 运行结果

上述代码中,使用$link = mysql_connect("localhost", "root","123456")or die("connection error: ".mysql_error());代码语句连接本地MySQL数据库,使用代码语句mysql_select_db("project",$link);选择指定的数据库"project",书写SQL语句,然后使用$result =mysql_query($sql,$link);来执行书写的SQL语句,得到的变量$result是一个结果集,接着使用$arrone = mysql_fetch_row($result);来取得结果集中当前指针的一行数据作为枚举数组。使用mysql_data_seek($result,3);将结果集中的指针移动到第四行数据,并输出得到数组的内容Array([0]=>4[1]=>C++)。