PHP 8.3.0 RC 6 available for testing

mysql_fetch_row

(PHP 4, PHP 5)

mysql_fetch_row从结果集中取得一行作为枚举数组

警告

本扩展自 PHP 5.5.0 起已废弃,并在自 PHP 7.0.0 开始被移除。应使用 MySQLiPDO_MySQL 扩展来替换之。参见 MySQL:选择 API 指南来获取更多信息。用以替代本函数的有:

说明

mysql_fetch_row(resource $result): array

返回根据所取得的行生成的数组,如果没有更多行则返回 false

mysql_fetch_row() 从和指定的结果标识关联的结果集中取得一行数据并作为数组返回。每个结果的列储存在一个数组的单元中,偏移量从 0 开始。

依次调用 mysql_fetch_row() 将返回结果集中的下一行,如果没有更多行则返回 false

参见 mysql_fetch_array()mysql_fetch_assoc()mysql_fetch_object()mysql_data_seek()mysql_fetch_lengths()mysql_result()

参数

result

resource 型的结果集。此结果集来自对 mysql_query() 的调用。

返回值

Returns an numerical array of strings that corresponds to the fetched row, or false if there are no more rows.

mysql_fetch_row() fetches one row of data from the result associated with the specified result identifier. The row is returned as an array. Each result column is stored in an array offset, starting at offset 0.

示例

示例 #1 Fetching one row with mysql_fetch_row()

<?php
$result
= mysql_query("SELECT id,email FROM people WHERE id = '42'");
if (!
$result) {
echo
'Could not run query: ' . mysql_error();
exit;
}
$row = mysql_fetch_row($result);

echo
$row[0]; // 42
echo $row[1]; // the email value
?>

注释

注意: 此函数将 NULL 字段设置为 PHP null 值。

参见

add a note

User Contributed Notes 4 notes

up
-19
a at simongrant dot org
21 years ago
Maybe worth pointing out that all the fields returned by this (and other?) calls are returned with type string. This had me puzzled for quite some time.
up
-20
pepik at gmail dot cz
10 years ago
<?php
require 'prhlavicka.php';
pis_hlavicku('Vypis článků');

require_once
'db.php';
$kom = new server();
$sql=$kom->query("SELECT autor,nazev,obsah FROM `Clanky_Sadek`");
while (
$data = mysql_fetch_row($sql)){
ECHO
'<br />--AUTOR--<br />'.$data[0].'<br />__NÁZEV ČLÁNKU__<br />'.$data[1].'<br />..OBSAH ČLÁNKU..<br />'.$data[2]; }

include
'Paticka.html'; ?>
up
-21
michael and then an at sign wassupy.com
20 years ago
to print an array, simply use print_r(array name)

like this:
$myrow = mysql_fetch_row($result);
echo "<pre>";
print_r($myrow);
echo "</pre>";

this will output the array in a readable form, with the index, too. Don't forget the 'pre' tags or the output will be on a single line.
up
-31
larkitetto at gmail dot com
15 years ago
sry :) note now fixed:

<?php
$esi
=mysql_list_tables($db);$ris=mysql_fetch_row($esi);
//example: $db has >= 1 tabs
echo var_dump($ris);
//echoes only array(1). solution:
while($ris=mysql_fetch_row($esi)) echo $ris[0];
/*debug:
$ris=array("1st_tab"); ... $ris=array("n_tab");$ris=false;*/
while ($ris[]=mysql_fetch_row($esi));
//debug:$ris=array(array("1st_tab"), ... array("n_tab"));
echo $ris[n][0];//echo:"n_tab"
echo $ris[0][n];//echo:array | null
?>

hope it helps
To Top