Najnowsze tutoriale tworzenie stron internetowych
 

PHP 5 Tablice wielowymiarowe


Wcześniej w tym poradniku, opisaliśmy tablice, które są pojedyncze lista par klucz / wartość.

Czasami jednak chcesz przechowywać wartości z więcej niż jednego klucza.

To mogą być przechowywane w wielowymiarowych tablic.


PHP - Tablice wielowymiarowe

Tablica wielowymiarowa to tablica zawierająca jeden lub więcej tablic.

PHP rozumie wielowymiarowych tablic, które są głęboko dwa, trzy, cztery, pięć lub więcej poziomów. Jednakże, macierze więcej niż trzech poziomów głęboko są trudne do zarządzania dla większości ludzi.

Wymiar tablicy wskazuje liczbę indeksów należy wybrać element.

  • Dla dwuwymiarowej tablicy potrzebne są dwa wskaźniki, aby wybrać element
  • Dla trójwymiarowej tablicy potrzebne są trzy indeksy, aby wybrać element


PHP - Tablice dwuwymiarowe

Dwuwymiarowy zbiorem jest zbiór macierzy (a three-dimensional array is an array of arrays of arrays) .

Po pierwsze, warto zapoznać się z poniższą tabelą:

Nazwa Zbiory Sprzedany
Volvo 22 18
BMW 15 13
Saab 5 2
land Rover 17 15

Możemy przechowywać dane z powyższej tabeli w dwuwymiarowej tablicy, jak to:

$cars = array
  (
  array("Volvo",22,18),
  array("BMW",15,13),
  array("Saab",5,2),
  array("Land Rover",17,15)
  );

Teraz dwuwymiarowa $ samochody tablica zawiera cztery tablice i ma dwa wskaźniki: wiersz i kolumnę.

Aby uzyskać dostęp do elementów tablicy $ samochodów musimy zwrócić się do dwóch wskaźników (row and column) :

Przykład

<?php
echo $cars[0][0].": In stock: ".$cars[0][1]." , sold: ".$cars[0][2]." .<br>";
echo $cars[1][0].": In stock: ".$cars[1][1]." , sold: ".$cars[1][2]." .<br>";
echo $cars[2][0].": In stock: ".$cars[2][1]." , sold: ".$cars[2][2]." .<br>";
echo $cars[3][0].": In stock: ".$cars[3][1]." , sold: ".$cars[3][2]." .<br>";
?>
Uruchomić przykład »

Możemy również umieścić Dla pętli wewnątrz innego dla pętli, aby elementy tablicy $ samochodów (we still have to point to the two indices) :

Przykład

<?php
for ($row = 0; $row < 4; $row++) {
  echo "<p><b>Row number $row</b></p>";
  echo "<ul>";
  for ($col = 0; $col < 3; $col++) {
    echo "<li>" .$cars[$row][$col]."</li>";
  }
  echo "</ul>";
}
?>
Uruchomić przykład »