Главная | Руководство по MySQL | MySQL Manual | Документация к HTTP серверу Apache | Apache HTTP Server Documentation | downloads | faq

искать  Язык: Английский


(PHP 4, PHP 5)

mysql_fetch_rowОрабатывает ряд результата запроса и возвращает неассоциативный массив.


array mysql_fetch_row ( resource $result )

Возвращает массив, содержашей данные обработанного ряда, или 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().

User Contributed Notes
jhulbert at redf dot com
19-Feb-2010 09:32
Creates table from all db info:

= "SELECT * FROM exp_member_data";
$res = mysql_query($mem_qry);

mysql_fetch_all($res) {
$row=mysql_fetch_array($res)) {
$return[] = $row;

create_table($dataArr) {
$j = 0; $j < count($dataArr); $j++) {

$all = mysql_fetch_all($res);

"<table class='data_table'>";

$i = 0; $i < count($all); $i++) {


larkitetto at gmail dot com
21-Feb-2008 11:29
sry :) note now fixed:

//example: $db has >= 1 tabs
echo var_dump($ris);
//echoes only array(1). solution:
while($ris=mysql_fetch_row($esi)) echo $ris[0];
$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
ryhan_balboa at yahoo dot com
16-Nov-2007 05:23
The following are the basic codes to get a specific row from the mysql db into a $row variable:

$query = "SELECT * FROM table";
$result = mysql_query($query);
$row = mysql_fetch_row($result);

And $row[0], $row[1] ... $row[n] are used to access those field values.

Does anyone know how I can add a new field to $row, so that the field count increases from n to n+1?

I have tried treating $row like an array, and tried array_push function, but didn't work.

m dot s at programmers-online dot net
17-Nov-2005 09:56
The following function to read all data out of a mysql-resultset, is may be faster than Rafaels solution:

function mysql_fetch_all($result) {
$row=mysql_fetch_array($result)) {
$return[] = $row;
mysql at polyzing dot com
12-Jul-2003 10:05
It is probably worth pointing out that the array elements will actually be of type string, OR NULL if the field is null in the database.

Thus, either use a double equal comparison to look for empty or null

Or, use a triple equal comparison to be able to distinguish the two cases


if ($field === '') echo "Empty, not NULL\n";

if ($field === NULL) echo "NULL\n";

if ($field == '') echo "Empty or NULL\n";
michael and then an at sign wassupy.com
08-Apr-2003 07:09
to print an array, simply use print_r(array name)

like this:
    $myrow = mysql_fetch_row($result);
echo "<pre>";
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.
a at simongrant dot org
06-Feb-2002 01:10
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.

credits | contact