top

Описание функции mysql-fetch-array



mysql_fetch_array


(PHP 3, PHP 4)
mysql_fetch_array - извлекает результирующий ряд как ассоциативный массив, числовой массив или и тот, и другой.

Описание


array mysql_fetch_array (resource result [, int result_type])
Возвращает массив, соответствующий извлечённому ряду, или FALSE , если рядов больше нет.
mysql_fetch_array() это расширенная версия mysql_fetch_row() . Помимо сохранения данных в числовых индексах результирующего массива, она также хранит данные в ассоциативных индексах, используя в качестве ключей имена полей.
Если два или более столбцов результата имеют одинаковые имена полей, последний столбец имеет приоритет. Для доступа к другим столбцам с тем же именем вы обязаны использовать числовой индекс столбца или создать для столбца псевдоним. Для столбцов с псевдонимами вы не можете получить доступ к их содержимому через оригинальное имя столбца (в нашем примере, используя 'field' ).
Пример 1. Запрос с дублирующими именами полей


select table1.field as foo table2.field as bar from table1, table2



Важно подчеркнуть, что mysql_fetch_array() работает ненамного медленнее, чем mysql_fetch_row() , но предоставляет важное дополнительное значение.
Необязательный второй аргумент result_type в mysql_fetch_array() является константой и может иметь следующие значения: MYSQL_ASSOC, MYSQL_NUM и MYSQL_BOTH. Это было добавлено в PHP 3.0.7. MYSQL_BOTH это значение по умолчанию данного аргумента.
Используя MYSQL_BOTH, вы получите массив с ассоциативными и числовыми индексами. Используя MYSQL_ASSOC, вы получите только ассоциативные индексы (как при работе mysql_fetch_assoc() ). Используя MYSQL_NUM, вы получите только числовые индексы (как при работе mysql_fetch_row() ).
Пример 2. mysql_fetch_array с MYSQL_NUM


<?php
    mysql_connect("localhost", "mysql_user", "mysql_password") or
        die("could not connect");
    mysql_select_db("mydb");

    $result = mysql_query("SELECT id, name FROM mytable");

    while ($row = mysql_fetch_array($result, MYSQL_NUM)) {
        printf ("ID: %s  Name: %s", $row[0], $row[1]);  
    }

    mysql_free_result($result);
?>


Пример 3. mysql_fetch_array с MYSQL_ASSOC


<?php
    mysql_connect("localhost", "mysql_user", "mysql_password") or
        die("could not connect");
    mysql_select_db("mydb");

    $result = mysql_query("SELECT id, name FROM mytable");

    while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
        printf ("ID: %s  Name: %s", $row["id"], $row["name"]);
    }

    mysql_free_result($result);
?>


Пример 4. mysql_fetch_array с MYSQL_BOTH


<?php
    mysql_connect("localhost", "mysql_user", "mysql_password") or
        die("could not connect");
    mysql_select_db("mydb");

    $result = mysql_query("SELECT id, name FROM mytable");

    while ($row = mysql_fetch_array($result, MYSQL_BOTH)) {
        printf ("ID: %s  Name: %s", $row[0], $row["name"]);
    }

    mysql_free_result($result);
?>



Детали см. в mysql_fetch_row() и mysql_fetch_assoc() .
corner
My pencil ;)
Главная     Сервисы     Портфолио     Проги     Видео     Контакты     Ссылки     Текст    

изысканная гитара купить Заказать тут