Tablice indeksowane i asocjacyjne
Tworzenie obu rodzajów tablic PHP i uzyskiwanie dostępu do ich elementów.
Tablice indeksowane i asocjacyjne to bezpłatna lekcja PHP Academy na CoddyKit. To lekcja 1 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej PHP Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs PHP Academy zawiera 4 lekcji w sumie.
Tablice w PHP
Tablice PHP są uporządkowanymi mapami — mogą działać jako listy, słowniki, stosy i kolejki. Wyróżniamy dwa główne rodzaje:
- Tablice indeksowane — klucze liczbowe (0, 1, 2…)
- Tablice asocjacyjne — klucze tekstowe
Tworzenie tablic indeksowanych
Użyj skróconej składni tablic [] lub array():
<?php
$colors = ['red', 'green', 'blue']; // short syntax
$nums = array(10, 20, 30); // long syntax
echo $colors[0]; // red
echo $nums[2]; // 30
echo count($colors); // 3Dodawanie i usuwanie elementów
Dodawaj elementy za pomocą [], a usuwaj za pomocą unset():
<?php
$items = ['a', 'b', 'c'];
$items[] = 'd'; // append
$items[] = 'e';
unset($items[1]); // remove 'b'
print_r($items);
// [0=>'a', 2=>'c', 3=>'d', 4=>'e'] — index gap!Tablice asocjacyjne
Użyj kluczy tekstowych, aby utworzyć strukturę przypominającą słownik:
<?php
$person = [
'name' => 'Alice',
'age' => 30,
'email' => 'alice@example.com',
];
echo $person['name']; // Alice
$person['city'] = 'London'; // add new key
unset($person['email']); // remove keySprawdzanie istnienia klucza
Sprawdź, czy klucz lub wartość istnieje w tablicy:
<?php
$config = ['debug' => false, 'version' => '2.0'];
var_dump(array_key_exists('debug', $config)); // true
var_dump(isset($config['debug'])); // false! debug=false, not NULL
var_dump(in_array('2.0', $config)); // truearray_key_exists a isset
isset() zwraca false dla kluczy zawierających wartości NULL; array_key_exists() zwraca true nawet dla wartości NULL:
<?php
$data = ['key' => null];
var_dump(isset($data['key'])); // false
var_dump(array_key_exists('key', $data)); // trueRozpakowywanie tablic
Destrukturyzuj tablice do zmiennych za pomocą skróconej składni listy:
<?php
$point = [10, 20, 30];
[$x, $y, $z] = $point;
echo "x=$x y=$y z=$z"; // x=10 y=20 z=30
// Skip elements
[, $second] = [1, 2, 3];
echo $second; // 2Scalanie tablic
Połącz tablice za pomocą array_merge() lub operatora rozpakowywania:
<?php
$a = ['x' => 1, 'y' => 2];
$b = ['y' => 99, 'z' => 3];
$merged = array_merge($a, $b);
print_r($merged); // x=>1, y=>99 (b overwrites), z=>3
$union = $a + $b;
print_r($union); // x=>1, y=>2 (a wins), z=>3Wycinanie fragmentu tablicy
Wyodrębnij fragment tablicy za pomocą array_slice():
<?php
$letters = ['a', 'b', 'c', 'd', 'e'];
$slice = array_slice($letters, 1, 3);
print_r($slice); // ['b', 'c', 'd']
$last2 = array_slice($letters, -2);
print_r($last2); // ['d', 'e']Operacje na stosie i kolejce
Tablice PHP mogą również pełnić funkcję stosów i kolejek:
<?php
$stack = [];
array_push($stack, 'a', 'b');
$top = array_pop($stack); // 'b' — LIFO
$queue = ['first', 'second'];
array_push($queue, 'third');
$front = array_shift($queue); // 'first' — FIFO
array_unshift($queue, 'zero'); // prependcompact i extract
compact() tworzy tablicę asocjacyjną na podstawie nazw zmiennych, a extract() wykonuje operację odwrotną:
<?php
$name = 'Alice';
$age = 30;
$data = compact('name', 'age');
// ['name' => 'Alice', 'age' => 30]
extract(['city' => 'London', 'country' => 'UK']);
echo $city; // London
echo $country; // UKSzybki test
Co zwraca array_key_exists('key', $arr), gdy klucz istnieje, ale jego wartością jest NULL?
Podsumowanie: tablice indeksowane i asocjacyjne
Podstawy tablic w PHP:
- Tablice indeksowane używają kluczy liczbowych, a asocjacyjne — tekstowych
- Dodawaj elementy za pomocą
$arr[] = value - Sprawdzaj klucze za pomocą
array_key_exists()iisset() - Destrukturyzuj tablice za pomocą
[$a, $b] = $arr - Scalaj za pomocą
array_merge()lub+— obowiązują różne zasady nadpisywania - Operacje na stosie i kolejce: push, pop, shift, unshift
Często zadawane pytania
Czy lekcja „Tablice indeksowane i asocjacyjne” jest bezpłatna?
Tak — pełny tekst „Tablice indeksowane i asocjacyjne” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu PHP Academy, przejdź na CoddyKit PRO. Kurs PHP Academy zawiera 4 lekcji w sumie.
Co nauczysz się w „Tablice indeksowane i asocjacyjne”?
Tworzenie obu rodzajów tablic PHP i uzyskiwanie dostępu do ich elementów. Ćwiczysz PHP Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć PHP Academy?
Nie wymagamy żadnego doświadczenia. PHP Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 1 z 4.
Ile czasu zajmuje lekcja „Tablice indeksowane i asocjacyjne”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji PHP Academy?
Tak. Każda lekcja PHP Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- Tablice indeksowane i asocjacyjne
- Tablice wielowymiarowe
- Sortowanie i wyszukiwanie w tablicach
- Funkcje przekształcania tablic