Ассоциативный массив - это коллекция данных вида ключ → значение, в которой ключем может выступать строка, а не только число.
Пример массива где ключом является автор, а значением – название книги:
$books = [
"Фрэнк Герберт" => "Дюна",
"Фёдор Достоевский" => "Преступление и наказание",
"Михаил Булгаков" => "Мастер и Маргарита",
"Лев Толстой" => "Война и мир",
"Джоан Роулинг" => "Гарри Поттер"
];
print_r($books); // Техническая распечатка массива
Вывод отдельных элементов и обход массива
// Получить отдельное значение по индексу уже не получится
echo $books[0]; // Warning: Undefined array key 0
// Нужно обращаться по ключу
echo $books["Лев Толстой"]; // "Война и мир"
// Выводим авторов и их книги
foreach ($books as $author => $title) {
echo "Автор: $author, Книга: $title \\n";
}
Ассоциативный массив может содержать не только коллекцию, но и например описывать какую-нибудь сущность. Например пользователя:
$user = [
"name" => "Иван",
"age" => 25,
"city" => "Москва"
];
echo $user["name"]; // Иван
📌 Задание 1
Создайте ассоциативный массив с данными о книге (title, author, year). Выведите все ключи и значения.
📌 Задание 2
На основе списка режиссеров и их фильмов создайте ассоциативный массив и поочереди распечатайте на экран режиссеров и названия фильмов.
**Кристофер Нолан:** Начало
**Квентин Тарантино:** Криминальное чтиво
**Стивен Спилберг:** Парк Юрского периода
**Дэвид Финчер:** Бойцовский клуб
**Мартин Скорсезе:** Волк с Уолл-стрит