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 »