Home >php教程 >php手册 >php中将指针移动到数据集初始位置的实现代码[mysql_data_seek]

php中将指针移动到数据集初始位置的实现代码[mysql_data_seek]

WBOY
WBOYOriginal
2016-06-13 11:57:091222browse

复制代码 代码如下:



// Start snipit 1
$sql = "SELECT * from

";
$result = mysql_query($sql);
while ($row = mysql_fetch_assoc($result)) {
// do stuff with $row
}
mysql_data_seek($result, 0); //关键是这儿
while ($row = mysql_fetch_assoc($result)) {
// do other stuff with $row
}
?>


定义和用法

mysql_data_seek() 函数移动内部结果的指针。

语法

mysql_data_seek(data,row)参数 描述
data 必需。返回类型为 resource 的结果集。该结果集从 mysql_query() 的调用中得到。
row 必需。想要设定的新的结果集指针的行数。0 指示第一个记录。

说明

mysql_data_seek() 将 data 参数指定的 MySQL 结果内部的行指针移动到指定的行号。
接着调用 mysql_fetch_row() 将返回那一行。
row 从 0 开始。row 的取值范围应该从 0 到 mysql_num_rows - 1。
但是如果结果集为空(mysql_num_rows() == 0),要将指针移动到 0 会失败并发出 E_WARNING 级的错误,mysql_data_seek() 将返回 false。

返回值

如果成功则返回 true,失败则返回 false。

提示和注释

注释:mysql_data_seek() 只能和 mysql_query() 一起使用,而不能用于 mysql_unbuffered_query()。

例子

复制代码 代码如下:


$con = mysql_connect("localhost", "hello", "321");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
$db_selected = mysql_select_db("test_db",$con);
$sql = "SELECT * from Person";
$result = mysql_query($sql,$con);
print_r(mysql_fetch_row($result));
mysql_data_seek($result,3);
print_r(mysql_fetch_row($result));
mysql_close($con);
?>


输出:

复制代码 代码如下:


Array
(
[0] => Adams
[1] => John
[2] => London
)

Array
(
[0] => Carter
[1] => Thomas
[2] => Beijing
)

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn