Уроки програмного забезпечення та програмування
Підручники з програмного забезпечення => Php => Тема розпочата: Dekez від Квт. 10, 2025, 03:06 PM
Асоціативні масиви є однією з найпотужніших і найгнучкіших структур даних у PHP. Вони дозволяють зберігати пари "ключ-значення", де ключі можуть бути рядками або числами, а значення — будь-яким типом даних, який підтримує PHP (числа, рядки, об'єкти, навіть інші масиви). У цій статті ми розглянемо, як створювати, використовувати та маніпулювати асоціативними масивами, а також додамо приклади коду та відповіді на поширені запитання (FAQs).
Що таке асоціативний масив?Асоціативний масив у PHP — це тип масиву, де кожен елемент має унікальний ключ, який використовується для доступу до відповідного значення. На відміну від числових масивів, де індекси автоматично призначаються як числа (0, 1, 2...), в асоціативних масивах ви самі визначаєте ключі.Приклад асоціативного масиву:$student = [
"ім'я" => "Олена",
"вік" => 20,
"спеціальність" => "Інформатика"
];
Як створювати асоціативні масиви?У PHP є два основні способи створення асоціативних масивів:- Синтаксис із квадратними дужками:
$car = [];
$car["марка"] = "Toyota";
$car["модель"] = "Camry";
$car["рік"] = 2022;
- Синтаксис із функцією array() або коротким записом []:
$car = array(
"марка" => "Toyota",
"модель" => "Camry",
"рік" => 2022
);
// Або короткий запис:
$car = [
"марка" => "Toyota",
"модель" => "Camry",
"рік" => 2022
];
Доступ до елементів асоціативного масивуДля доступу до значень використовуйте ключ у квадратних дужках або фігурних дужках (у старих версіях PHP):echo $car["марка"]; // Виведе: Toyota
echo $car["модель"]; // Виведе: Camry
Якщо ключа не існує, PHP поверне null і може видати попередження (залежно від налаштувань).
Маніпуляція асоціативними масивами- Додавання нового елемента:
$car["колір"] = "чорний";
$car["рік"] = 2023;
unset($car["модель"]);
- Перевірка існування ключа:
if (array_key_exists("марка", $car)) {
echo "Марка автомобіля: " . $car["марка"];
}
Ітерація по асоціативному масивуДля перегляду всіх пар "ключ-значення" використовуйте цикл foreach:$student = [
"ім'я" => "Олена",
"вік" => 20,
"спеціальність" => "Інформатика"
];
foreach ($student as $key => $value) {
echo "$key: $value<br>";
}
Виведення:ім'я: Олена
вік: 20
спеціальність: Інформатика
Практичний приклад: Список контактівСтворимо асоціативний масив для зберігання інформації про контакти:$contacts = [
"Олег" => [
"телефон" => "+380671234567",
"email" => "[email protected]"
],
"Марія" => [
"телефон" => "+380681234567",
"email" => "[email protected]"
]
];
// Виведення інформації про Олега
echo "Телефон Олега: " . $contacts["Олег"]["телефон"] . "<br>";
echo "Email Олега: " . $contacts["Олег"]["email"];
Виведення:Телефон Олега: +380671234567
Email Олега: [email protected]
FAQ: Поширені запитання1. Чи можуть ключі асоціативного масиву повторюватися?Ні, ключі в асоціативному масиві унікальні. Якщо ви додасте елемент із уже існуючим ключем, старе значення буде перезаписано.2. Як перевірити, чи масив порожній?Використовуйте функцію empty():$array = [];
if (empty($array)) {
echo "Масив порожній!";
}
3. Чи можна використовувати числа як ключі в асоціативних масивах?Так, ключі можуть бути як рядками, так і числами:$data = [
1 => "Один",
"два" => 2
];
4. Як об'єднати два асоціативні масиви?Використовуйте оператор + або функцію array_merge():$array1 = ["a" => 1];
$array2 = ["b" => 2];
$merged = array_merge($array1, $array2);
print_r($merged); // Виведе: ["a" => 1, "b" => 2]
5. Як відсортувати асоціативний масив за ключами?Використовуйте ksort() для сортування за ключами:$array = ["яблуко" => 5, "банан" => 2];
ksort($array);
print_r($array); // Виведе: ["банан" => 2, "яблуко" => 5]
ВисновокАсоціативні масиви в PHP — це незамінний інструмент для роботи з даними, який дозволяє гнучко зберігати та обробляти інформацію. Завдяки простоті синтаксису та широким можливостям маніпуляції, вони підходять як для початківців, так і для досвідчених розробників. Спробуйте попрактикуватися з прикладами вище, щоб краще освоїти цю тему!