Page 16 - 4636
P. 16
1.9 Типи змінних
Тип змінної характеризується видом збережених у ній даних. РНР пропонує цілий набір типів
даних. Різні дані можуть зберігатися в змінних різних типів.
Типи даних РНР
РНР підтримує такі базові типи даних.
Integer (цілий) - використовується для представлення цілих чисел;
Float, також званий double (подвійної точності) - використовується для представлення дійсних
чисел;
String (рядок) - використовується для представлення рядків символів;
Boolean (булевий) - використовується для зберігання значень true (істина) і false (хибність);
Array (масив) - використовується для зберігання декількох елементів даних;
Object (об'єкт) - використовується для зберігання екземплярів класів.
Доступні також і два спеціальних NULL і resource(ресурс). Змінні, яким не присвоєно конкретні
значення, які не визначені або приймають значення NULL, відносяться до типу NULL. Деякі вбудовані
функції (наприклад, функції роботи з базами даних) повертають зміні ресурсного типу. Такі змінні
представляють зовнішні ресурси (наприклад, з'єднання з базами даних). Можна з достатньою
впевненістю стверджувати, що безпосередньо маніпулювати змінними ресурсного типу не доведеться,
тим не менш, вони часто повертаються одними функціями і передаються як параметри в інші функції.
1.10 Ступінь типізації
Мова РНР є слабо типізованою, або динамічно типізованою. У більшості мов програмування змінні
можуть зберігати дані тільки одного типу, і цей тип повинен бути оголошений, перш ніж змінну
можна буде використовувати, як в мові С. У РНР тип змінної визначається типом присвоєного їй
значення.
Наприклад, при створенні змінних $totalqty і $totalamount їх початкові типи були визначені
таким чином:
$totalqty = 0;
$totalamount =0.00;
Оскільки змінній $totalqty було присвоєно ціле значення 0, ця змінна має тип integer.
Аналогічно, змінна $totalamountмає тип float.
В сценарій можна помістити такий рядок:
$totalamount = 'Ласкаво просимо';
Тепер змінна $totalamountмає тип string. РНР у будь-який момент часу змінює тип змінної
відповідно до даних, що в ній зберігаються.
Подібна можливість явної зміни типів може виявитися винятково корисною. РНР “автоматично”
розпізнає тип даних, що вносяться в змінні. РНР повертає дані саме того типу, який був призначений
змінній.
1.11 Приведення типів
За допомогою механізму приведення типів можна переводити змінну або конкретне значення і
інший тип. Приведення виконується так само, як у мові С. Для цього достатньо просто перед змінною,
тип якої ви хочете перетворити, помістити в круглих дужках тимчасовий тип.
Наприклад, ми можемо оголосити дві використані вище змінні, застосувавши при цьому механізм
приведення типів:
$totalqty = 0;
$totalamount = (float)$totalqty;
13