8 Змішані типи даних

Матеріал з Wiki TNEU
Перейти до: навігація, пошук

У мові 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; 
?>

Особисті інструменти
Простори назв

Варіанти
Дії
Навігація
Інструменти