PHP Manual

Команди, ключові слова та функції в PHP

11. 09. 2019

Obsah článku

Кожен PHP-скрипт складається з команд і функцій, разом вони називаються **конструкціями**. Коли скрипт обробляється, ці мовні вирази відстежуються (цей процес називається **токенізація**) і на основі *ключових слів* інтерпретатор вирішує, як повинен поводитися процесор.

Команди

Команди (в англійській мові вони називаються keywords) - це вже запрограмовані частини мови, вони зарезервовані спеціально для свого призначення, можуть бути використані негайно в будь-якій ситуації (не потребують додаткових спеціальних бібліотек або інсталяції), складають основу всіх скриптів.

Наприклад, витягнення рядка в HTML-код:

echo 'Echo - мовна команда для перерахування вмісту';

З командами важливо відзначити, що вони не повертають ніякого значення і тому не можуть бути використані в якості змінної. Команди також можна ідентифікувати за тим, що вони не містять круглих дужок.

Приклади:

echo 'Здрастуй, світ!';
echo ('Здрастуй, світ!');

Якщо я укладу зміст команди в круглі дужки, поведінка не зміниться і вона буде сприйматися як вираз. Це так само, як якщо б ми писали математику:

5 + 3
// або:
(5 + 3)

Формально різниця є, але на практиці нічого не змінюється.

Функції

Якби були тільки команди, то було б досить нудно. Функції - це сукупність декількох команд.

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

Коли ми викликаємо функцію, то передаємо їй параметри у вигляді змінних, вона виконує код і повертає результат, який ми можемо використовувати далі.

$text = 'PHP - моя улюблена мова!';
echo 'Текст "' . $text . '" - це довгий' . strlen($text) . 'персонажі.';

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

function mojeFunkce(int $x, int $y): int
{
$z = $x + $y; // додає вхідні параметри та зберігає їх у змінній
return $z; // повертає змінну $z
}
echo mojeFunkce(5, 3); // виводить число 8, тому що числа оброблялись функцією

Змінні у функціях

Локальні змінні використовуються в межах функцій, що означає, що вони можуть використовуватися тільки в межах функції і не можуть маніпулюватися (або визначатися) за межами функції. Свої початкові значення вони отримують з параметрів функції безпосередньо у визначенні функції.

Приклад:

$z = 5;
function prvniFunkce(int $x, int $y): int
{
return $x - $y; // це поверне різницю чисел
}
function druhaFunkce(): mixed
{
return $z; // повертає помилку, тому що змінна $z
// не визначено всередині функції
}

Іноді корисно встановити деякі з параметрів як необов'язкові, це робиться шляхом визначення альтернативного (за замовчуванням) значення:

echo prictiCislo(5); // повертає 6
echo prictiCislo(5, 7); // повертає 12
function prictiCislo(int $x, int $y = 1): int
{
return $x + $y;
}

Функція prictiCislo() додає значення зі змінної $y до змінної $x. Якщо змінна $y не визначена (не вказана як параметр при виклику функції), то буде використано її значення за замовчуванням, записане у визначенні функції. Тому другий параметр функції (змінна $y) є необов'язковим.

Кожна функція може мати тільки один вихід (одне повернення), якщо у функції вказати декілька виходів, то повертається той, що вказаний першим. Якщо потрібно повернути декілька значень, необхідно використовувати масив.

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

Jan Barášek   Více o autorovi

Autor článku pracuje jako seniorní vývojář a software architekt v Praze. Navrhuje a spravuje velké webové aplikace, které znáte a používáte. Od roku 2009 nabral bohaté zkušenosti, které tímto webem předává dál.

Rád vám pomůžu:

Související články

1.
7.
Status:
All systems normal.
2024