mysql_fetch_array()
时间:2021-07-01 10:21:17
帮助过:34人阅读
() 函数从结果集中取得一行作为关联数组,或数字数组,或二者兼有。返回根据从结果集取得的行生成的数组,如果没有更多行则返回
false。
其使用语法如下:
1
mysql_fetch_array(data,
array_type)
参数 data 是可选的。它规定规定要使用的数据指针。该数据指针是 mysql_query() 函数产生的结果。
参数 array_type 也是可选的。它规定返回哪种结果。可能的值:MYSQL_ASSOC - 关联数组、MYSQL_NUM - 数字数组、MYSQL_BOTH -
默认。同时产生关联和数字数组。
下面是该函数的一个例子:
01
<?
php
02
$con =
mysql_connect("localhost", "hello", "321"
);
03
if (!
$con)
04
{
05
die(‘Could not connect: ‘ .
mysql_error());
06
}
07
$db_selected =
mysql_select_db("test_db",
$con);
08
$sql = "SELECT * from Person WHERE Lastname=‘Adams‘"
;
09
$result =
mysql_query(
$sql,
$con);
10
print_r(
mysql_fetch_array(
$result));
11
mysql_close(
$con);
12
?>
输出类似:
1
Array
2
(
3
[0] =>
Adams
4
[LastName] =>
Adams
5
[1] =>
John
6
[FirstName] =>
John
7
[2] =>
London
8
[City] =>
London
9
)
mysql_fetch_array() 这个函数只是从记录集中取一条记录并赋值给一个数组,然后指针移到下一条记录。不是把整个结果集都直接赋值到一个二维数组。所以要取出整个数据列的数据,需要用循环解决。
这么一来的话,如果要定位某数据列的某个值,那么可以用循环取出数据列的所以值,然后再定位,比如以下例子:
1
$query_1 =
mysql_query("select * from count order by count_id"
);
2
while(
$areas =
mysql_fetch_array(
$query_1))
3
{
4
// 获取数据表列中最后那个值,若为空则表明上次查询并非该列
5
$area_prev =
$areas["count_area"
];
6
if(!
empty(
$areas["count_area"
]))
7
$area_query =
$areas["count_area"
];
8
}
变量 $area_prev 为数据列的最后一个值,而
$area_query 则是数据列最后一个非空值。
mysql_fetch_array()
标签: