Php mysqli_fetch_array

Php mysqli_fetch_array
W tym samouczku dowiemy się, jak korzystać z funkcji MySQLI_Fetch_Array w PHP. Ta funkcja pozwala nam pobrać wiersze z bazy danych MySQL i przechowywać je jako tablicę PHP. Funkcja umożliwia przechowywanie wartości jako tablicy asocjacyjnej, tablicy numerycznej lub kombinacji obu. Następnie możesz manipulować tablicą jak zwykle. Zanurzmy się w środku.

Składnia funkcji

Poniższy fragment pokazuje składnię proceduralną dla funkcji MySQLI_Fetch_Array:

mysqli_fetch_array (mysqli_result $ wynik, int $ tryb = mysqli_both): tablica | null | false

Parametry funkcji są takie jak pokazano:

  1. Wynik - ten parametr pozwala określić obiekt mysql_result zwrócony przez mysqli_query (), mysqli_store_result (), mysqli_stmt_get_result () lub mysqli_use_result () funkcje.
  2. Tryb - parametr trybu definiuje rodzaj tablicy używanej do przechowywania wynikowych wartości. Zaakceptowane wartości obejmują:
    1. Mysqli_Assoc - tablica asocjacyjna.
    2. Mysqli_num - tablica numeryczna.
    3. Mysqli_both - połączenie tablicy asocjacyjnej i numerycznej.

Funkcja zwróci tablicę z pobieranymi wierszami. Jeśli nie ma pobieranych wierszy, funkcja zwraca zerową lub fałsz w sprawie awarii.

Przykładowe użycie

Omówmy przykład użycia funkcji mysqli_fetch_array (). Zacznij od utworzenia przykładowej bazy danych, tabeli i danych, jak pokazano w pytaniu poniżej:

Utwórz bazę danych SRC;
Użyj SRC;
Tabela upuszcza, jeśli istnieje STACK_Mapping;
Utwórz tabelę Stack_mapping (
ID Int Auto_increment Key podstawowy,
Server_name varchar (50) nie null,
Adres varchar (100) nie null,
Instalowane_wersja Varchar (50),
Tool_id int
);
Wstaw do STACK_Mapping (nazwa_ Server, Adres, Instalowane_version, Tool_id)
Wartości („SQL Server”, „LocalHost: 1433”, '15.0 ', 1),
(„ElasticSearch”, „Localhost: 9200”, „8.4 ', 2),
(„Redis”, „Localhost: 6379”, „6.0 ', 3),
(„Postgresql”, „LocalHost: 5432”, '14.5 ', 4),
(„Mysql”, „Localhost: 3306”, „8.0 ', null);

Powstała tabela jest jak pokazana:

Poniższy przykład pokazuje, jak używać funkcji php mysqli_fetch_array, aby zwrócić wiersze z powyższej tabeli jako tablica.

Zacznij od utworzenia pliku PHP:

$ Touch Fetch.php

Edytuj plik:

$ vim fetch.php

Dodaj kod, jak pokazano:

$ mysqli = mysqli_connect („localHost: 3306”, „root”, „”, „src”);
if (mysqli_connect_errno ())
die („nie można się połączyć”);

$ query = "Wybierz Server_name, adres z Stack_Mapping";
$ wynik = mysqli_query ($ mysqli, $ query);
while ($ row = mysqli_fetch_array ($ wynik, mysqli_assoc))
printf („%s (%s) \ n”, $ row [„Server_name”], $ row [„adres”]);

mysqli_free_result ($ wynik);
?>

Na koniec uruchom skrypt z PHP:

PHP Fetch.php

Powinno to zwrócić wiersze jako tablicę asocjacyjną, znaną również jako słownik w innych językach programowania.

Uwaga: Uwaga Uzyskamy dostęp do wartości słownika za pomocą nazwy wiersza (klucz słownika).

Przykładem jest to, jak pokazano:

SQL Server (LocalHost: 1433)
ElasticSearch (LocalHost: 9200)
Redis (Localhost: 6379)
PostgreSQL (LocalHost: 5432)
MySQL (LocalHost: 3306)

Aby zwrócić wartości jako tablicę numeryczną, możemy użyć zapytania:

$ mysqli = mysqli_connect („localHost: 3306”, „root”, „”, „src”);
if (mysqli_connect_errno ())
die („nie można się połączyć”);

$ query = "Wybierz Server_name, adres z Stack_Mapping";
$ wynik = mysqli_query ($ mysqli, $ query);
while ($ row = mysqli_fetch_array ($ wynik, mysqli_num))
printf („%s (%s) \ n”, $ wiersz [0], $ wiersz [1]);

mysqli_free_result ($ wynik);
?>

Podobnie powyższy kod powinien zwrócić wiersze jako:

SQL Server (LocalHost: 1433)
ElasticSearch (LocalHost: 9200)
Redis (Localhost: 6379)
PostgreSQL (LocalHost: 5432)
MySQL (LocalHost: 3306)

Wreszcie, aby uzyskać wyniki jako tablice asocjacyjne, jak i numeryczne.

$ mysqli = mysqli_connect („localHost: 3306”, „root”, „”, „src”);
if (mysqli_connect_errno ())
die („nie można się połączyć”);

$ query = "Wybierz Server_name, adres z Stack_Mapping";
$ wynik = mysqli_query ($ mysqli, $ query);
while ($ row = mysqli_fetch_array ($ wynik, mysqli_both))
printf („%s (%s) \ n”, $ row [0], $ row [„adres”]);

mysqli_free_result ($ wynik);
?>

Wniosek

W tym artykule nauczyłeś się, jak korzystać z funkcji mysqli_fetch_array w PHP, aby pobrać wiersze z bazy danych jako tablica.