Функции php позволяют вынести серверную логику в отдельные файлы и скрыть ее от глаз пользователей. Таким образом безопасность вашего сайта начинает расти в разы. Да и в целом это помогает оптимизировать сайт. В этой статье мы напишем несколько функций.
Функции PHP — Первая функция
Прежде всего надо помнить, что функция выполняется на стороне сервере, а не клиента. То есть не в браузере пользователя, а на сервере вашего хостинга. Пользовательские функции не застрахованы от ошибок, но мы все понимаем, что есть миллион отладчиков и валидаторов. К тому же в наше время почти любой редактор (кроме блокнота) способен создать подсветку синтаксиса и в случае ошибки дать подсказку. Тем не менее у самого php есть огромное количество встроенных функций, но о них вы можете почитать на php.net.
Итак, давайте напишем функцию, которая выведет в браузер Hello, World (как никак это канон). Код будет выглядеть так:
1 2 3 4 5 |
<?php function Hello() { echo "Hello, World!"; } ?> |
Саму функцию написали, теперь давайте организуем вызов функции php на страницу браузера:
1 2 3 4 5 6 7 8 |
<?php function Hello() { echo "Hello, World!"; } Hello(); ?> |
Надеюсь ответ на вопрос «как вызвать функцию php» вы получили. Отлично, теперь на странице браузера отображена фраза «Hello, World!». Это пример самой простой функции, результат её работы вы можете посмотреть здесь.
#Аргументы функции php
Аргументы функции это значения, которые передаются в функцию. Например; напишем функцию, которая принимает значение строковой переменной:
1 2 3 4 5 6 7 8 9 |
<?php $angryString = "I am a row!"; function AngryRow($angryString) { echo $badString; } AngryRow($angryString); ?> |
Результат работы смотрим здесь.
Но зачем передавать аргументы функции, если можно воспользоваться echo, спросите Вы? Отвечаю: во-первых, если вы пилите сайт в рамках обучения или просто пишите какую-либо функцию, то лучше ее экранировать от других языков. Безусловно вы можете смешать php и html, но функции ни в коем случае не должны лежать там же, где описана разметка страницы. Лучшим решением будет 1 файл — 1 функция. Но в большинстве случаев используется файл functions.php (например в движке WordPress) и туда уже помещаются все функции, которые написаны и разработчиками WP и разработчиком сайта на WP. Так же не забывайте называть функции так, чтобы их название отражало их смысл. Едем дальше.
#Вызов функции php из другого файла
Допустим мы уже разместили саму функцию в одном файле и хотим ее вызвать из другого. Для этого необходимо в основном файле, из которого вы будете вызывать функцию добавить строку следующего вида:
1 2 3 4 5 |
require_once 'MyFunction.php'; <?php MyFunction(); ?> |
Таким образом, если функция будет найдена в файле, который запрашивается в начале, или в файле из которого произведен вызов функции, то она будет вызвана. Например, для этой статьи я специально создал отдельные php файлы, давайте создадим новый файл php-functions-4.php и напишем вызов функции Hello():
Файл php-functions-3.php:
1 2 3 4 5 |
<?php function Hello() { echo "Hello, World!"; } ?> |
Файл php-functions-4.php
1 2 3 4 5 6 7 |
<?php require_once 'php-functions-1.php'; Hello(); ?> |
Результат работы функции php можно посмотреть тут.
Итог
Таким образом можно писать любые пользовательские функции. Более того, функции используются для обработки и возврата данных, для отрисовки, авторизации и еще много чего прочего. Пишите комментарии, если у вас остались вопросы, не забывайте про нашу группу в ВК и ютуб канал!