Przejdź do głównej treści
  1. Strona główna
  2. Słownik
  3. INF.03
  4. Funkcja mysqli_fetch_array() w PHP

Funkcja mysqli_fetch_array() w PHP

Słownik kwalifikacji INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych

mysqli_fetch_array() służy do pobierania kolejnych wierszy z wyniku zapytania SQL wykonanego przez mysqli_query(). Funkcja jest często używana w pętli while, ponieważ przy każdym wywołaniu zwraca następny rekord, a po wyczerpaniu wyników zwraca false.

Składnia

$wiersz = mysqli_fetch_array($wynik);

Parametr $wynik to rezultat zapytania, np. zmienna zwrócona przez mysqli_query().

Przykład

$zapytanie = mysqli_query($db, "SELECT imie, nazwisko FROM uzytkownik");

while ($wiersz = mysqli_fetch_array($zapytanie)) {
    echo "$wiersz[0] $wiersz[1]";
}

W tym przykładzie:
- $zapytanie przechowuje wynik zapytania SQL,
- mysqli_fetch_array($zapytanie) pobiera kolejny wiersz,
- $wiersz[0] oznacza pierwszą kolumnę, czyli imie,
- $wiersz[1] oznacza drugą kolumnę, czyli nazwisko.

Indeksy numeryczne i asocjacyjne

Domyślnie mysqli_fetch_array() pozwala odwoływać się do danych zarówno przez indeksy numeryczne, jak i nazwy kolumn:

echo $wiersz[0];        // imie
echo $wiersz["imie"];   // imie

Najważniejsze na egzaminie

Jeśli w kodzie występuje pętla:

while ($wiersz = ...)

i trzeba pobierać kolejne rekordy z wyniku zapytania MySQLi, właściwą funkcją jest najczęściej mysqli_fetch_array(), mysqli_fetch_row() albo mysqli_fetch_assoc(). W tym pytaniu poprawna odpowiedź to mysqli_fetch_array($zapytanie).