Итак, продолжаем серию уроков по php.
Теперь мы изучим функции (да-да, так сразу). Функции позволяют уйти от дублирования кода на сайте тем самым ускорив скорость разработки и уменьшить количество самого кода. Допустим, у нас есть сайт, и на каждой странице выводится какая-то информация. Разберем простой пример, и напишем простую функцию фильтрации текста, чтобы применять ее на каждой странице сайта а где-то не по 1 разу. Создадим файл filter.php в корне нашего сайта.
<?php
function filter ($string) {
$string = trim($string);
$string = htmlspecialchars($string);
return $string;
}
Теперь, чтобы применить эту функцию в каком-то участке кода – нам не нужно писать 4 лишние строчки кода а достаточно написать filter($value); где $value это слово (или строка) которую необходимо фильтрануть. Допустим на сайте есть некоторые формы, которые заполняют пользователи, и во избежание написания ими (пользователями) всякой бяки на ваш сайт мы применяем нашу функцию. Создадим файл index.php в корне нашего сайта
<form action="" method="post">
<input name="name" type="text">
<input name="enter" type="submit" value="Отправить">
</form>
К примеру, такие формы (я пишу только ради примера, поэтому форма такая простая всего с одним полем ввода и кнопкой отправить). Пишем небольшой наипростейший обработчик в том же файле index.php .
<?php
include "filter.php"; // подключаем созданный ранее файл с функцией
if (isset($_POST['enter'])) // если нажата кнопка Отправить (name кнопки = enter), то выполняется следующий код
{
$name = filter($_POST['name']);
/**
* создаем новую переменную и применяем нашу функцию
* ключевое слово filter указывает, что необходимо найти эту функцию и выполнить
* в скобках указывается $value - то, что фильтруем, в нашем случае это
* введеные пользовательские данные из текстового поля с именем name
* функция применяется автоматически и обрабатывает все, что введет пользователь
*/
exit($name); // завершаем работу скрипта и выводим на экран результат обработки нашей функции
} else { ?>
<form action="" method="post">
<input name="name" type="text">
<input name="enter" type="submit" value="Отправить">
</form><?php
}
Теперь все работает. Ниже приведены скриншоты как это выглядит (если вам лень практиковаться)

Напишем что-нибудь нехорошее в поле ввода (к примеру js скрипт с алертом)

Как видим – весь текст обработался нашим простеньким фильтром и просто вывелся на экран текстом. Скрипт завершил работу без вреда для сайта

Таких форм может быть бесчисленное множество (хотя фильтровать текст надо всегда, и не обязательно в формах для пользователей). Так-же как и функции могут быть абсолютно разными , некоторые уже есть готовые в самом php (н-р: date(), time() и т.д.) – найти и ознакомиться с ними можно на сайте php.net . Например мы применяли функцию isset()

На этом все. Кому было полезно – напишите в комментариях какие функции вы придумали сами 😀