Урок 5. Функции

  • 26 декабря 2018
  • 2342
0%

Помогло?

В сегодняшнем уроке мы познакомимся с наиболее важными и уже встроенными в язык, и позволяющими решить наиболее частые задачи функциями в 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

На самом деле, их очень много, но не спешите все запомнить. Это приходит постепенно с опытом. Просто перед написанием своей функции заглядывайте в мануал и проверьте, нет ли уже такой функции по умолчанию :)

Сообщения: (0)

?
Публикуя сообщение, вы соглашаетесь с пользовательским соглашением

Читайте также