#10 - Функції. Область видимості
Відеоурок
Функції можна назвати невеликими підпрограмами, куди можна винести повторюваний код і звертатися до нього, коли це буде потрібно. Функції значно спрощують побудову програм, оскільки нам не потрібно копіювати однотипний код безліч разів, а можна просто скористатися однією загальною функцією.
Багато хто плутає функції і методи та не розуміє відмінностей між ними. Насправді відмінностей немає, оскільки що методи, що функції є одним і тим самим. Функції, що записані поза класами, називають функціями, а функції, що записані всередині класів, називають методами.
Така ж ситуація складається із змінними. У класах змінні називаються полями, а поза класами - змінними.
У PHP функції створюються за допомогою ключового слова function. Кожна функція може мати які-небудь параметри або ж не мати їх зовсім. Функції здатні щось повертати в процесі виконання коду, якщо це потрібно.
Створення функції
На основі всіх даних наша функція буде виглядати наступним чином:
function test() {
echo "Виведення чого-небудь у консоль";
}Функція вище не приймає жодних параметрів і нічого не повертає. Вона просто виводить слово у консоль. Давайте урізноманітнимо функцію і додамо параметр:
function test($word) {
echo $word;
}Тепер функція приймає параметр, який буде відображено у консолі.
Якщо функція повинна щось повернути, то прописуємо тип даних, який буде повернуто. Для повернення даних використовуємо ключове слово return:
function test($some_number) {
$some_number *= 2;
return $some_number;
}Область видимості
У PHP є кілька полів видимості: локальна та глобальна. Якщо записати глобальну змінну, то така змінна буде видима всюди і з нею можна працювати звідусіль у документі. Якщо записати локальну змінну, то така змінна буде видима лише в тій області, де вона записана.
Для створення глобальної змінної її необхідно прописати поза функцією, класом або ж об'єктом. Для створення локальних змінних достатньо помістити змінну у функцію. Змінна у функції буде видима лише всередині блоку з функцією і ніде більше.
Якщо з функції ми хочемо отримати доступ до змінної, записаної поза функцією, то необхідно прописувати ключове слово global:
$some = "Тест";
function getValue() {
// echo $some; // Нічого не виведе
echo global $some; // Виведе слово "Тест"
}function getNewValue() {
// Створюємо статичну змінну
static $count = 0;
$count += 4;
echo $count;
}
getNewValue(); // Виведе 4
getNewValue(); // Виведе 8
getNewValue(); // Виведе 12
// і так даліВихідний код
Весь код буде доступний після підписки на проект! Завдання до уроку
Необхідно оформити передплату на проект, щоб отримати доступ до всіх домашніх завдань
Велике завдання за курсом
Вам необхідно оформити передплату на сайті, щоб мати доступ до всіх великих завдань. У завдання входить методика рішення, а також готовий проект з відповіддю до завдання.
PS: подібні завдання доступні при підписці від 1 місяця
Також варто подивитися