8 Змішані типи даних
У мові PHP є два змішаних типи: array (масив) і object (об'єкт).
Зміст |
Тип array (масиви)
Масив в PHP - це впорядкований набір даних, у якому встановлено відповідність між значенням і ключем. Індекс (ключ) служить для однозначної ідентифікації елемента всередині масиву. В одному масиві не може бути двох елементів з однаковими індексами. PHP дозволяє створювати масиви будь-якої складності. Розглянемо деякі приклади:
Простий масив (список)
Масиви, індексами яких є числа, що починаються з нуля - це списки: <?php // Простий спосіб ініціалізації масиву $names[0] ="Апельсин"; $names[1] ="Банан"; $names[2] ="Груша"; $names[3] ="Помідор"; // Тут: names - ім'я масиву, а 0, 1, 2, 3 - індекси масиву ?>
Асоціативні масиви
У PHP індексом масиву може бути не тільки число, але і рядок. Причому на рядок не накладаються обмеження: вона може містити пробіли, спеціальні символи і бути будь-якої довжини. Масиви, індексами яких є рядки, називаються асоціативними масивами. Індекси асоціативних масивів називаються ключами. Приклад асоціативного масиву: <?php // Асоціативний масив $names["Мерзлюк"] ="Іван"; $names["Сидоров"] ="Микола"; $names["Петренко"] ="Петро"; // В даному прикладі: прізвища - ключі асоціативного масиву //, а імена - елементи масиву ?>
Багатовимірні масиви
Для створення масивів в PHP існує спеціальна інструкція array(). Її зручно використовувати для створення багатовимірних масивів. Наведемо конкретний приклад: <?php // Багатомірний масив $A["Ivanov"] = array ("name" => "Іванов І.І.", "age" => "25", "email" => "ivanov@mail.ru"); $A["Petrov"] = array ("name" => "Петров П.П.", "age" => "34", "email" => "petrov@mail.ru"); $A["Sidorov"] = array ("name" => "Сидоров С.С.", "age" => "47", "email" => "sidorov@mail.ru"); ?>
Тип object (об'єкти)
Об'єкт є одним з базових понять об'єктно-орієнтованого програмування. Внутрішня структура об'єкта схожа на хеш, за винятком того, що для доступу до окремих елементів і функцій використовується оператор ->, а не квадратні дужки. Для ініціалізації об'єкту використовується вираз new, що створює в змінної екземпляр об'єкта. <?php class foo {
function do_foo () { echo "Doing foo."; }
} $bar = New foo; $bar->do_foo (); ?>
Тип resource (ресурси) Ресурс - це спеціальна змінна, що містить посилання на зовнішній ресурс. Ресурси створюються і використовуються спеціальними функціями.
Тип NULL (порожній тип)
Спеціальне значення NULL говорить про те, що ця змінна не має значення. NULL - це єдине можливе значення типу NULL (порожній тип). Змінна вважається NULL якщо:
- їй була присвоєна константа NULL;
- їй ще не було присвоєно яке-небудь значення;
- вона була видалена за допомогою unset ().
<?php $var = NULL; ?>