PHP. Урок 3. Функції, оператори та змінні

В попередньому уроці я коротко розповів як налаштувати веб-сервер для роботи. Сподіваюсь, інформація була досить детальна і ви тепер в змозі створити при необхідності віртуальний сервер та налаштувати його для роботи. Зрозуміло, що тема налаштувань веб-сервера цим не обмежується, але поки що нам цього досить.
Крокуємо далі. В попередньому ж уроці ви мали змогу написати програму на PHP (так так – ото незрозуміле – то була саме програма) та тепер прийшов час розібратися — що це було.
PHP, як ви можливо знаєте, створювався як інструмент який дозволить керувати виводом HTML, по суті це своєрідний “клей” який з’єднує собою статичний HTML-текст. До речі — PHP — це рекурсивний акронім – “PHP Hypertext Processor”. Але за десять з лишком років PHP розвинувся, та зараз це мова програмування, сфера застосування якої виходить далеко за межі HTML та Web. Але й досі PHP є однієї з найпопулярніших мов для програмування саме у всесвітній мережі, для розробки сайтів та Web-проектів.
Кожен фрагмент коду на PHP обов’язково починається з <?php та закінчується на ?>, наприклад

<!?php

phpinfo();

?>

– таким чином ми викликали функцію phpinfo() у потрібному нам місці. Чи ще приклад:

<?php
echo 'Ми вчимо PHP!';
echo 'Сьогодні:'.strfdate('%c');
?>

Зупинимось на цьому більш детально. Цей фрагмент має чотири стрічки – початок PHP-коду, виклик двох функцій echo та закриття PHP-коду. Окрім цього ми викликали функцію strfdate з параметром “%c” та додали результат її роботи до виводу функції echo.
Але,чекайте — що таке функція?
Функцією називається фрагмент програмної коди, що володіє унікальним ім’ям і призначений для вирішення конкретного завдання. Функція викликається по імені в різних точках програми, що дозволяє багато разів виконувати фрагмент з вказаним ім’ям. Перевага такого рішення полягає в тому, що блок коду пишеться лише один раз, а потім легко модифікується по мірі необхідності. Функції можуть бути вбудовані та користувацькі. Функція може приймати аргументи, а може не мати жодного — цим до речі функція відрізняться від оператора. Функція може повертати якесь значення, а може не повертати жодного.
Для того, щоби створити функцію, використовують спеціальне слово function за яким йде назва функції, а також список аргументів. Наприклад оголошення функції без жодного аргументу:

<?php
 function someFunction()
 {
 echo 'Це виклик нашої фукції';
 }
 ?>


Виклик функції, яку ми оголосили:

<?php
 someFunction();
 ?>


Оголошення функції, яка приймає аргументи, та її виклик:

<?php
 function someFunctionWithArg($some)
 {
 echo $some;
 }
 someFunctionWithArg('А це аргумент');
 ?>
 

Оголошення та виклик функції, що приймає два аргументи, та повертає стрічку:

<?php
 function someFunctionWithArgRet($one,$two)
 {
 $three = $one .' '.$two;
 return $three
 }
 echo someFunctionWithArgRet('Ми вчимо','PHP');
 ?>


Думаю що поки що зрозуміло? Крокуємо далі. Що таке оператор?
Оператором називається конструкція мови програмування, що отримує один або більше аргументів, виконує над ними операцію, та повертає результат, який може бути новим аргументом. В залежності від того, скільки значень приймає оператор, виділяють три виду операторів — унарні оператори — наприклад оператор інкремента (++) – це оператор, що збільшує аргумент на одиницю, оператор декремента (–) – зменшує аргумент на одиницю, оператор заперечення (!) , бінарні оператори — які приймають два аргумента — наприклад оператор додатку (+) та більшість операторів, які підтримує PHP, та тернарний оператор — він використовується для вибору між двома операторами, в залежності від обчислення третього. Наприклад цей код завжди буде виводити “Чотири”:

<?php
 echo (2+2)? 'Чотири':'П\'ять';
 ?>


Думаю, поки все зрозуміло? Зверніть, будь-ласка, увагу — кожен виклик функції або оператора — простіше кажучи, кожна інструкція завершується “;” – так само, як, наприклад, в С або С++, за єдиним винятком — якщо це остання инструкція перед закриваючим тегом “?>” – крапку з комою можна не ставити. Тож:

<?php
 echo 'Тут обов'язково потрібна крапка з комою';
 echo 'А тут  - необов'язково, можна й так, бо завершуючий тег'
 ?>

Окрім функцій та операторів PHP існують змінні. Змінна — це іменована ділянка пам’яті, де знаходяться якісь дані. Ім’я змінної починається з “$” за яким йде буква або знак підкреслення з подальшими в будь-якій кількості буквами, цифрами або символами підкреслення. Це можна зобразити регулярним вираженням: “[а-za-z_\x7f-\xff][а-za-z0-9_\x7f-\xff]”. PHP змінні не мають типів – одна й та ж змінна може бути як числом, так й строковою. Змінні мають зону видимості. Зона видимості змінної – це середовище, в якому вона визначена. В більшості випадків всі змінні PHP мають єдину зону видимості. Це єдина зона видимості охоплює файли, що також включаються (include) і необхідні (require). Наприклад:

<?php
 $a = 1;
 include 'b.php';
 ?>


таким чином змінна $a буде доступна у файлі b.php. Але якщо змінна буде визначена у функції користувача — її зона видимості буде локальною — вона не буде доступна зовні.
Змінні можуть бути використані будь де.
А тепер завдання для самостійної роботи — оголосіть дві функції, одна приймає змінну, збільшує її на одиницю та повертає її, а друга — виводить результат роботи першої. Підказка — функції можна викликати з других функції.
Весь свій код ви пишіть поки що у файл index.php, який ви створили на попередньому завданні.

<?php та закінчується на ?>

Если статья была полезна вам – не забывайте поделиться ею со своими друзьями в социальных сетях. Если есть вопросы – задавайте в комментариях либо в наших социальных группах.

6 коментарів до “PHP. Урок 3. Функції, оператори та змінні

  1. А як же функції PHP для роботи з файлами??? Я маю на увазі ось це –
    fopen($file_name, mode)., де mode може бути

    – r – відкрити файл тільки для читання та приготуватись читати його з початку;

    r+ – відкрити файл для читання і для запису, а також одночасно приготуватись до роботи з файлом з його початку, з першої строчки.

    w – відкрити файл лише для запису, попередньо видаливши з нього весь вміст, причому, якщо файл з вказаним ім’ям не існує, то автоматично створюється новий файл з таким ім’ям, яке ви задали.

    w+ – відкрити файл як для запису, так і для можливого майбутнього зчитування, але знову ж таки з файлу видаляється весь вміст, і якщо файл з вказаним іменем не існує на сервері, то автоматично буде створено новий файл з таким же іменем.

    a– відкрити файл для запису і тільки для запису, а також дописувати дані в його кінець. Відповідно, файл створиться, якщо немає такого на сервері;

    a+ – відкрити файл для запису і для читання, а також приготуватись дописувати дані в його кінець. Знову ж таки файл створиться автоматично, якщо такого немає.

Коментувати не дозволено.