Tablica PHP: asocjacyjna, wielowymiarowa
⚡ Inteligentne podsumowanie
Tablice PHP przechowują wiele powiązanych wartości w jednej zmiennej, co ułatwia grupowanie i przetwarzanie powiązanych danych. Ten przewodnik obejmuje tablice numeryczne, asocjacyjne i wielowymiarowe, operatory porównywania tablic oraz podstawowe funkcje, takie jak count, sort, ksort i asort.

Co to jest tablica PHP?
Tablica PHP to zmienna przechowująca więcej niż jeden fragment powiązanych danych w jednej zmiennej.
Wyobraź sobie tablicę jako pudełko czekoladek z przegródkami w środku.
Pole reprezentuje samą tablicę, natomiast przestrzenie zawierające czekoladki reprezentują wartości przechowywane w tablicy.
Poniższe przykłady ilustrują jak to działa.
Tablice numeryczne
Tablice numeryczne wykorzystują liczby jako klucze dostępu.
Klucz dostępu jest odniesieniem do gniazda pamięci w zmiennej tablicowej.
Klucz dostępu jest używany zawsze wtedy, gdy chcemy odczytać element tablicy lub przypisać mu nową wartość.
Poniżej przedstawiono składnię tworzenia tablicy liczbowej w PHP.
Przykład tablicy
<?php $variable_name[n] = value; ?>
Or
<?php
$variable_name = array(n => value, ...);
?>
TUTAJ,
- „$nazwa_zmiennej…” to nazwa zmiennej
- „[n]” to numer indeksu dostępu elementu
- „wartość” to wartość przypisana do elementu tablicy.
Przyjrzyjmy się teraz przykładowi tablicy liczbowej.
Załóżmy, że mamy 5 filmów, które chcemy przechowywać w zmiennych tablicowych.
Możemy w tym celu posłużyć się przykładem pokazanym poniżej.
<?php $movie[0] = 'Shaolin Monk'; $movie[1] = 'Drunken Master'; $movie[2] = 'American Ninja'; $movie[3] = 'Once upon a time in China'; $movie[4] = 'Replacement Killers'; ?>
Tutaj,
Każdemu filmowi przypisany jest numer indeksu, który służy do pobierania lub modyfikowania jego wartości. Przyjrzyj się poniższemu kodowi.
<?php $movie[0]="Shaolin Monk"; $movie[1]="Drunken Master"; $movie[2]="American Ninja"; $movie[3]="Once upon a time in China"; $movie[4]="Replacement Killers"; echo $movie[3]; $movie[3] = " Eastern Condors"; echo $movie[3]; ?>
Wyjście:
Once upon a time in China Eastern Condors
Jak widać z powyższych przykładów, praca z tablicami w PHP, gdy mamy do czynienia z wieloma wartościami tego samego rodzaju, jest bardzo łatwa i elastyczna.
Alternatywnie powyższe zmienne tablicowe można również utworzyć przy użyciu następującego kodu.
<?php $movie = array(0 => "Shaolin Monk", 1 => "Drunken Master", 2 => "American Ninja", 3 => "Once upon a time in China", 4 => "Replacement Killers" ); echo $movie[4]; ?>
Wyjście:
Replacement Killers
Tablica asocjacyjna PHP
Tablice asocjacyjne różnią się od tablic numerycznych tym, że używają opisowych nazw dla kluczy identyfikacyjnych.
Poniżej przedstawiono składnię tworzenia tablicy asocjacyjnej w PHP.
<?php $variable_name['key_name'] = value; $variable_name = array('keyname' => value); ?>
TUTAJ,
- „$nazwa_zmiennej…” to nazwa zmiennej
- „['key_name']” to klucz dostępu do elementu
- „wartość” to wartość przypisana do elementu tablicy.
Załóżmy, że mamy grupę osób i chcemy przypisać każdej osobie płeć na podstawie jej imion.
Możemy do tego użyć tablicy asocjacyjnej. Poniższy kod nam w tym pomoże.
<?php $persons = array("Mary" => "Female", "John" => "Male", "Mirriam" => "Female"); print_r($persons); echo ""; echo "Mary is a " . $persons["Mary"]; ?>
TUTAJ,
Wyjście:
Array ( [Mary] => Female [John] => Male [Mirriam] => Female ) Mary is a Female
Tablice asocjacyjne są również bardzo przydatne przy pobieraniu danych z bazy danych.
Nazwy pól są używane jako klucze identyfikacyjne.
PHP Tablice wielowymiarowe
Są to tablice zawierające inne tablice zagnieżdżone.
Zaletą tablic wielowymiarowych jest to, że pozwalają nam grupować powiązane dane.
Przyjrzyjmy się teraz praktycznemu przykładowi implementacji wielowymiarowej tablicy PHP.
Poniższa tabela przedstawia listę filmów według kategorii.
| Tytuł filmu | Kategoria |
|---|---|
| Różowa Pantera | Komedia |
| Jana Anglika | Komedia |
| Szklana pułapka | Działania |
| Expendables | Działania |
| Władca Pierścieni | Epicki |
| Romeo i Julia | Romans |
| Nie widzieć zła, nie słyszeć zła | Komedia |
Powyższe informacje można przedstawić w postaci tablicy wielowymiarowej. Poniższy kod przedstawia implementację.
<?php $movies = array( "comedy" => array("Pink Panther", "John English", "See no evil hear no evil"), "action" => array("Die Hard", "Expendables"), "epic" => array("The Lord of the rings"), "Romance" => array("Romeo and Juliet") ); print_r($movies); ?>
TUTAJ,
Wyjście:
Array ( [comedy] => Array ( [0] => Pink Panther [1] => John English [2] => See no evil hear no evil ) [action] => Array ( [0] => Die Hard [1] => Expendables ) [epic] => Array ( [0] => The Lord of the rings ) [Romance] => Array ( [0] => Romeo and Juliet ) )
Inny sposób zdefiniowania tej samej tablicy jest następujący.
<?php $film = array( "comedy" => array( 0 => "Pink Panther", 1 => "John English", 2 => "See no evil hear no evil" ), "action" => array ( 0 => "Die Hard", 1 => "Expendables" ), "epic" => array ( 0 => "The Lord of the rings" ), "Romance" => array ( 0 => "Romeo and Juliet" ) ); echo $film["comedy"][0]; ?>
Wyjście:
Pink Panther
Uwaga: tablica numeryczna filmów została zagnieżdżona wewnątrz tablicy asocjacyjnej kategorii.
Tablice PHP: Operatorsy
| OperaTor | Imię i nazwisko | OPIS | Jak to zrobić | Wydajność |
|---|---|---|---|---|
| x+y | Unia | Łączy elementy z obu tablic |
<?php $x = array('id' => 1); $y = array('value' => 10); $z = $x + $y; ?> |
Tablica([id] => 1 [wartość] => 10) |
| x == y | Równy | Porównuje dwie tablice i zwraca wartość true, jeśli są równe |
<?php $x = array("id" => 1); $y = array("id" => "1"); if($x == $y) { echo "true"; } else { echo "false"; } ?> |
Prawda lub 1 |
| x === y | Identyczny | Porównuje wartości i typy danych |
<?php $x = array("id" => 1); $y = array("id" => "1"); if($x === $y) { echo "true"; } else { echo "false"; } ?> |
Fałsz lub 0 |
| x != y, x <> y | Nie równe | Zwraca wartość true, jeśli dwie tablice nie są równe |
<?php $x = array("id" => 1); $y = array("id" => "1"); if($x != $y) { echo "true"; } else { echo "false"; } ?> |
Fałsz lub 0 |
| x !== y | Nieidentyczne | Zwraca wartość true, jeśli dwie tablice nie są identyczne pod względem wartości lub typu |
<?php $x = array("id" => 1); $y = array("id" => "1"); if($x !== $y) { echo "true"; } else { echo "false"; } ?> |
Prawda lub 1 |
Funkcje tablicy PHP
Funkcja zliczania
Funkcja count służy do zliczania liczby elementów tablicy PHP. Poniższy kod przedstawia implementację.
<?php $lecturers = array("Mr. Jones", "Mr. Banda", "Mrs. Smith"); echo count($lecturers); ?>
Wyjście:
3
funkcja is_array
Funkcja is_array służy do określenia, czy zmienna jest tablicą, czy nie. Przyjrzyjmy się teraz przykładowi implementującemu funkcję is_array.
<?php $lecturers = array("Mr. Jones", "Mr. Banda", "Mrs. Smith"); echo is_array($lecturers); ?>
Wyjście:
1
Sortuj
Funkcja ta służy do sortowania tablic według ich wartości.
Jeśli wartości są alfanumeryczne, sortuje je w kolejności alfabetycznej.
Jeśli wartości są numeryczne, sortuje je w kolejności rosnącej.
Usuwa istniejące klucze dostępu i dodaje nowe klucze numeryczne.
Wynikiem tej funkcji jest tablica liczbowa.
<?php $persons = array("Mary" => "Female", "John" => "Male", "Mirriam" => "Female"); sort($persons); print_r($persons); ?>
Wyjście:
Array ( [0] => Female [1] => Female [2] => Male )
sortuj
Ta funkcja służy do sortowania tablicy za pomocą klucza. Poniższy przykład ilustruje jej użycie.
<?php $persons = array("Mary" => "Female", "John" => "Male", "Mirriam" => "Female"); ksort($persons); print_r($persons); ?>
Wyjście:
Array ( [John] => Male [Mary] => Female [Mirriam] => Female )
rodzaj
Ten funkcjonować służy do sortowania tablicy za pomocą wartości podczas gdy keeping klucze. Poniższy przykład ilustruje ich użycie.
<?php $persons = array("Mary" => "Female", "John" => "Male", "Mirriam" => "Female"); asort($persons); print_r($persons); ?>
Wyjście:
Array ( [Mary] => Female [Mirriam] => Female [John] => Male )
Po co używać tablic?
- Zawartość tablic można rozciągnąć, aby pomieścić więcej wartości.
- Tablice ułatwiają grupowanie powiązanych informacji, takich jak dane logowania do serwera.
- Tablice pomagają pisać czystszy kod.



