Одним з основних елементів майже в кожній мові програмування є змінні. Змінні використовуються для зберігання інформації, яка потрібна буде в подальшому. У PHP змінні повинні починатися зі знака долара ($), після якого слідує ім’я змінної.

Є кілька правил, які вам потрібно знати при створенні змінних.

По-перше, ім’я змінної повинно починатися з літери або нижнього підкреслення. По-друге, ім’я не може починатися з цифри. По-третє, воно може містити тільки буквено-цифрові символи і символи підкреслення (A-z, 0-9 і _). По-четверте, імена змінних чутливі до регістру. Значення $somevar і $SOMEVAR – це дві різні змінні. Тому звертайте увагу на правильність регістру, коли посилаєтесь на існуючу змінну.

<?php
$first_var = "Змінна з текстом"; // строкова змінна
$second_var = 100; // змінна з цілим числом
?>

 

 

Область видимості змінної

Змінні можуть бути оголошені в будь-якому місці вашого PHP скрипта. І ви можете визначати змінні в двох областях видимості: локально або глобально. Коли ви визначаєте змінну поза функцією, вона має глобальну область видимості. З іншого боку, змінна, яку ви оголошуєте всередині функції, має локальну область видимості. Така змінна може бути доступна тільки всередині цієї функції.

Це важливо пам’ятати. Це може допомогти вам уникнути багатьох потенційних головних болів. Однак ви можете визначити змінну з використанням ключового слова global, щоб зробити її глобальною змінною. Це, наприклад, дозволить вам отримувати доступ до глобальної змінної з функції. Приклад використання:

<?php
$name = "Anatoly";
function getName() {
  echo $name;
}
getName(); // Error: Undefined variable: name
// використання ключового слова "global"
$name = "Anatoly";
function getName() {
  global $name;
  echo $name;
}
getName(); // вивід "Anatoly"
?>

 

 

 

Мінливі змінні

У PHP є одна цікава особливість. Ви можете використовувати одну змінну, щоб вказати ім’я для іншої змінної. Ця «мінлива змінна» обробляє значення другої змінної як її ім’я. Це може звучати дивно. Можливо, для вас ця функція не буде корисною в роботі, але принаймні корисно знати, що така річ існує.

Сподіваємося, що наведений нижче приклад полегшить вам задачу:

<?php
$a = "hello";
$hello = "world";
echo $$a;
// вивід "world"
?>

 

Мінлива змінна бере значення змінної і розглядає його як ім’я змінної. $$a – це мінлива змінна, яка використовує в якості імені значення змінної $a. Воно дорівнює «hello». В результаті створюється змінна $hello, в якій зберігається значення «world».

 

 

Заздалегідь визначені змінні

Крім «звичайних» змінних, PHP також пропонує велику кількість зумовлених змінних, які також називаються «суперглобальними» змінними. Це $_SERVER, $GLOBALS, $_REQUEST, $_POST, $_GET, $_FILES, $_ENV, $_COOKIE, $_SESSION та інші. «Суперглобальні» змінні доступні завжди, і область видимості в цьому випадку не має значення.

Ви можете звертатися до будь-якої з цих «суперглобальних» змінних, наприклад, в будь-який функції, класі або файлі. Можливо, ви знайдете деякі з цих «суперглобальних» змінних більш корисними, а деякі – менш корисними. Наприклад, $_POST і $_GET будуть дуже корисні, якщо ваш поточний проект вимагає роботи з формами, при відправці або отриманні деяких даних.

 

 

Константи

Є ще одна річ, пов’язана зі змінними. Йдеться про константи. Константи схожі на змінні, за винятком однієї речі. Ви не можете змінити їх після визначення. Іншими словами, вони незмінні. Як ви можете створити або визначити нову константу? Ви повинні використовувати вбудовану функцію PHP define().

Ця функція приймає три параметри. Цими параметрами є ім’я, значення і чи є константа нечутливою до регістру. Іншими словами, define(ім'я, значення, регістр). ім'я – це ім’я константи, значення – це значення константи, регістр вказує, чи повинно ім’я константи не враховувати регістр (тут значенням за замовчуванням є false, тобто, враховувати регістр).

<?php
// Приклад чутливої ​​до регістру константи
define("GREETING", "Привіт, світ!");
echo GREETING; // "Привіт, світ!"
// Приклад НЕ чутливої до регістру константи
define("GREETING", "Привіт, світ!", true);
echo greeting; // "Привіт, світ!"
?>

 

 

Типи даних

В даний час в PHP існує сім типів даних. Це рядки, цілі числа, числа з плаваючою точкою (також звані double), логічні значення (boolean), масиви, об’єкти і NULL. Ви вже бачили приклад рядка на самому початку уроку ($first_var). Простіше кажучи, рядок – це будь-яка послідовність символів, що міститься в одинарних або подвійних лапках.

<?php
$first_var = "Змінна з текстом"; // рядок
?>

 

 

Цілі числа, числа з рухомою комою і логічні значення

Ціле число – це ціле число. І воно повинно відповідати деяким критеріям. По-перше, воно повинно бути без десяткових знаків (без крапки, або коми). По-друге, воно не може містити пробіли. По-третє, воно може бути як позитивним, так і негативним. По-четверте, воно повинно містити як мінімум одну цифру. Нарешті, допустиме ціле число може бути зазначено в трьох форматах: десятковий, шістнадцятковий або восьмеричний.

Число з рухомою комою – це будь-яке число з десятковою комою або в експоненційної формі. Логічні значення можуть мати одне з двох можливих станів. Це або true (істина), або false (хиба).

<?php
// приклад цілого числа в десятковому форматі
$integer_var = 25;
// приклад цілого числа в шістнадцятковому форматі
$integer_var_hex = 1A;
// приклад числа з рухомою комою
$float_var = 3,14159;
// приклад логічних значень (boolean)
$boolean_var_true = true;
$boolean_var_false = false;
?>

 

Про масиви в PHP ви можете почитати в цьому уроці.

 

Recent Posts

Що таке Unix Domain Socket: секретний тунель у Linux

У нашій подорожі світом сокетів ми почали з "верхнього поверху" — WebSocket у браузері, потім…

1 тиждень ago

Мережеві сокети (Network Sockets): фундамент інтернету 🌐 | Глибоке занурення

У попередній статті ми говорили про WebSockets — технологію, що дозволяє створювати інтерактивні чати в…

2 тижні ago

Як доглядати за шкірою малюка влітку та взимку

Шкіра немовляти – тонка та ніжна. Ще не справляється із захистом організму від зовнішніх факторів.…

2 тижні ago

Що таке Сокети (WebSocket) 🔌 | детально для початківців

Уявіть собі телефонну розмову. Ви дзвоните другу, він піднімає слухавку, і ви можете говорити одночасно,…

2 тижні ago

Мобільний воркстейшн: чи може планшет 📱 замінити ноутбук веб-розробнику?

Довгий час планшети сприймалися виключно як пристрої для споживання контенту: подивитися YouTube, погортати стрічку новин…

2 тижні ago

Як примусово оновити кеш у користувачів 🧹 | Практичні методи

Ви внесли правки в CSS, виправили критичний баг у JavaScript, завантажили файли на сервер і…

2 тижні ago