Уроки PHP – Змінні
Одним з основних елементів майже в кожній мові програмування є змінні. Змінні використовуються для зберігання інформації, яка потрібна буде в подальшому. У 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 ви можете почитати в цьому уроці.