Від автора: сьогодні, панове, я викликаю на дуель PHP! Цей серверний мова мав «нахабство» виділитися серед інших програмних дисциплін: обзавестися власним синтаксисом при роботі з функціями. Сьогодні ми здобудемо над ним хоч і маленьку, але дуже важливу перемогу – з’ясуємо, як викликати функцію PHP.
Народження функції
Для початку пройдемося по теорії, і згадаємо, що таке функція і навіщо вона потрібна. Щоб це з’ясувати, ми створимо власну. Будь-яка функція у всіх мовах програмування (у тому числі і в PHP) буде працювати тільки, якщо задано її визначення. Воно складається з імені функції, після якого йдуть круглі дужки з перерахуванням прийнятих параметрів. При цьому функція може взагалі не приймати аргументів.
Потім у фігурних дужках розташовується її тіло, де прописується програмний код, який буде виконуватися після її виклику. Поки вистачить! Давайте реалізуємо те, що описали:
Якщо дуже кортить, і сверблять руки чогось протестувати, то можете запустити створену функцію в браузері (на локальному сервері або на сервері в інтернеті). Але ви нічого не побачите, оскільки ми тільки визначили функцію, але не викликали її.
Додамо код виклику функції:
Отримали те, що хотіли. Тепер модернізуємо тіло і виклик функції, і передамо в неї один аргумент:
Крім цього функція може повертати якесь значення. Воно вказується після оператора return. Трохи змінимо попередній приклад:
В результаті отримаємо висновок аналогічної фрази у вікні браузера.
Мозаїка програмних мов і технологій
Програмний світ настільки непередбачуваний, що навіть самий досвідчений розробник не скаже точно, що чекає його за наступним «кутом». Але досить лірики, і вирішимо хоча б одну нагальну проблему. Наприклад, як з PHP можна викликати функцію JavaScript. Про цей «камінчик» поламав зуб не один новачок. Ось просте рішення даної проблеми:
function jsfunct()
{
alert (“Я функція JavaScript”);
}
function phpfunct()
{
echo "jsfunct();";
echo "Я функция PHP, которая вызывает функцию JavaScript";
}
phpfunct();
?>
І відразу відповім на ще один «одвічне» питання: викликати функцію PHP через AJAX не можна. Для цього її потрібно помістити в окремий файл PHP і звідти працювати з нею. Але це вже дуель трохи з іншої опери! А цей бій ніхто не програв і не виграв, оскільки PHP виявився настільки захоплюючим «співрозмовником», що ми вирішили з ним подружитися. Ось так, панове!