В сьогоднішньому теоретичному уроці ми розглянемо одне із важливих питань не тільки в PHP, але й для інших мов програмування – типи даних.
Інформація (дані) завжди має певний тип, тобто свою характеристику. Ця характеристика описує об’єкт даних: змінну, масив, константу, функцію і так далі. Змінна, як і інші об’єкти, може зберігати дані різних типів. А різні типи даних використовують для різних дій, і можуть мати свої обмеження.
Кожна мова програмування працює з різними типами даних і може називати їх по-різному, але левову частку становлять варіанти основних чотирьох типів даних:
boolintfloatstring
Також, PHP працює з іншими типами даних, зокрема:
arrayobjectnullresourceОсновні типи даних розглянемо нижче на прикладах.
Для того, щоб отримати тип даних поточного об’єкта в PHP, ви можете використовувати функцію var_dump():
$variable = 25; var_dump($variable); // int(25)
В даному прикладі змінна $variable має тип даних Ціле число (int) – Integer.
Для перевірки типу даних змінної можна також використовувати функцію gettype().
Для перевірки конкретного типу даних використовуйте функції виду is_*(): наприклад, для перевірки чи це масив, функцію is_array() і так далі.
Щоб явно вказати тип даних існуючої змінної, ви можете використовувати приведення типів. Для цього перед значенням змінної запишіть її тип у круглих дужках. Наприклад, щоб вказати, що ви використовуєте логічне значення, запис буде мати такий можливий вигляд:
$variable = (bool) 25;
Масив (array)
Масив в основному використовується для зберігання кількох значень в одній змінній. Детальніше про масиви PHP читайте в нашому попередньому уроці. Приклад масиву:
$days = array("Monday", "Tuesday", "Wednesday");
var_dump($days); // array(3)
Логічне значення (bool)
Логічний тип даних має лише два значення. Це може бути або true (істина), або false (хиба). Цей тип часто використовують в PHP, наприклад, при умовній перевірці if…else. Приклад запису:
$variable = TRUE; var_dump($variable); // bool(true)
Ціле число (int)
Цілі числа – це числа без знаків після коми, та які відповідають наступним правилам: мають хоча б одну цифру, можуть бути додатними або від’ємними, визначені у двійковій, вісімковій, десятковій або шістнадцятковій системі запису.
В наступному прикладі змінна $variable є цілим числом:
$variable = 2023; var_dump($variable); // int(2023)
Число з рухомою комою (float)
Числа з плаваючою точкою – це числа, які мають відокремлення дробів від цілої частини крапкою (але не завжди), або число в експоненціальній формі.
В прикладі нижче змінна $variable є числом з рухомою крапкою:
$variable = 12.345; var_dump($variable); // float(12.345)
Рядок (string)
Рядки — це простий набір символів (включно з словами, буквами, цифрами або цілими реченнями), який обробляється як текст. Рядок можна визначити одинарними або подвійними лапками, а також heredoc або nowdoc синтаксисом.
Якщо в тексті потрібно використати лапки (для рядка визначеного одинарними лапками), тоді їх екранують зворотним слешем (\). Сам зворотній слеш екранують його дублюванням (\\). Якщо потрібно, щоб в тексті оброблювались змінні або керувальна послідовність для спеціальних символів, тоді потрібно використовувати або подвійні лапки ("), або heredoc запис (echo <<<CODE … CODE;). Рекомендуємо ознайомитись із уроком про основні приклади роботи з рядками.
Нижче наведено приклад рядка в PHP:
$variable = 'Зразок рядка: тут і цифри (12345), і одинарні лапки (об\'єкт) і використання \\ зворотного слеша'; var_dump($variable); // string(161) "Зразок рядка: тут і цифри (12345), і одинарні лапки (об'єкт) і використання \ зворотного слеша"
Нуль, порожній вказівник (NULL)
NULL — це спеціальний тип даних, з лише одним значенням: null (регістр не важливий). Якщо ви створили змінну, але не вказали їй значення, вона автоматично буде мати значення NULL, іншими словами це порожня змінна. Приклад нижче:
$variable; var_dump($variable); // null
Об’єкт (object)
Об’єкт являється складним типом даних. Оскільки це досить об’ємна тема, рекомендуємо ознайомитися з цим типом даних в окремій нашій статті Класи і введення в ООП. Адже Об’єкт та Клас – це дві надважливі концепції об’єктно-орієнтованого програмування (ООП), яким потрібно приділити більше уваги.
Дякуємо за увагу!
WordPress роками був неперевершеним "монолітом": він відповідав і за зручну адмін-панель, і за збереження даних,…
У світі веб-серверів часто говорять про протистояння Nginx vs Apache. Але що, якби я сказав…
Коли я починав свій шлях у веб-розробці, питання "який веб-сервер використовувати?" практично не стояло. Відповідь…
Коли мова заходить про веб-сервери, два імені завжди на слуху: Apache та Nginx. Apache —…
У світі веб-розробки ми постійно стикаємося з проблемою: "А в мене на комп'ютері все працює!".…
На зорі моєї кар'єри веб-розробника все було відносно просто: встановив локальний сервер (пам'ятаєте Denwer?), поклав…