Урок 5. Функции
В сегодняшнем уроке мы познакомимся с наиболее важными и уже встроенными в язык, и позволяющими решить наиболее частые задачи функциями в PHP, а также напишем свою функцию. Итак… поехали!
Давайте напишем функцию, которая будет скажет нам: возможно ли разделить ли число на 2 без остатка или нет? Функция будет возвращать true (если делится) и false (если обратное).
Чтобы научится писать свои функции, надо понять, что такое return. Это значение завершает выполнение программы и возвращает (выводит) полученный результат. Давайте разберемся на примере. Чтобы создать функцию, нужно придерживаться синтаксиса:
function name ($param) {
// тело функции
}
Сначала идет служебное слово function, далее название функции (вы можете дать ей любое название, только необходимо придерживаться правил наименования: все как у переменных), а в круглых скобках сама переменная, которая будет передаваться в тело функции. Таким образом, наша конструкция будет выглядеть вот так:
function devided($number){
if($number % 2 == 0){
return true;
}
return false;
}
Обратите внимание на %! Это арифметический оператор деления с остатком. В нашем случае получится следующее: если число, передаваемое параметром в функцию, делится на 2, и ее остаток равен 0, то мы делаем вывод, что это правда, и оно делится на 2 без остатка.
Вызвать функцию очень просто:
var_dump(devided(2));
var_dump(devided(3));
Я настоятельно не рекомендую использовать echo внутри функции. Это очень плохой тон. Грамотным будет считаться нижеуказанный вариант записи:
$number = 24;
if(devided($number)) {
echo "Число ".number." делится на 2";
}
PHP DOC.
Чтобы другие программисты могли понимать, как использовать вашу функцию, ее необходимо задукомментировать. Для это используются комментарии PHP DOC. Более полную информацию можете почитать на https://ru.wikipedia.org/wiki/PHPDoc
Комментарий должен иметь 3 основные секции: описание, параметры, возвращаемые значения. Пример:
/**
* Функция, определяющая, делится ли число на 2 без остатка
* @param int Число, которое нужно проверить
* @return bool Результат проверки
*/
function devided($number){
if($number % 2 == 0){
return true;
}
return false;
}
PHP DOC начинается с специального символа: /**, далее делается перенос на новую строчку. В начале каждой следующей (строки) проставляется звездочка. Параметры начинаются со слова : @param, а вывод @return. Далее идет тип данных и описание. Заканчивается все специальным символом */
Многие функции вам писать не придется, они уже готовы. Для примера, функция подсчета элементов в массиве count($array):
$array = [1,2,3,4,5,6];
echo count($array);
Выведет:
6
Для примера, функции для работы со строками: http://php.net/manual/ru/book.strings.php
или массивами: http://php.net/manual/ru/book.array.php
На самом деле, их очень много, но не спешите все запомнить. Это приходит постепенно с опытом. Просто перед написанием своей функции заглядывайте в мануал и проверьте, нет ли уже такой функции по умолчанию :)
Курс
- Урок 1. Основы PHP
- Урок 2. Функции вывода строк
- Урок 3. Управляющие конструкции (if else,switch)
- Урок 4. Массив и функция перебора
- Урок 5. Функции
- Урок 6. Волшебные и предопределенные константы
- Урок 7. Заключение. Игра
Облако тегов
Следующая статья
Урок 6. Волшебные и предопределенные константы
В данном уроке мы с вами узнаем, что такое волшебные константы, и почему они так называются, в чем их магия?