Что такое функция в программировании простыми словами

Вот начал я публиковать различные полезные функции у себя в блоге, которые можно просто взять и использовать. Да пока не много таких функций я опубликовал но все же есть парочка. Речь о двух функциях “дата в формате «х Дней назад»” и “Обрезка строки без разрыва слов на PHP”.

Но все же что такое функция? Решил попытаться разобрать этот вопрос.

Сразу хочу сказать, что функция в математике и функция в программировании это не одно и тоже, хотя они достаточно похожи между собой.

Функция в математике в математике соответствие между элементами двух множеств, установленное по такому правилу, что каждому элементу первого множества соответствует один и только один элемент второго множества.

Что такое функция?

Функция в программировании представляет из себя черный ящик, название которого мы имеем и пониманием, что этот ящик может делать. Более того, в этот черный ящик мы можем передать определенные параметры и на выходе получить уже обработанную информацию.

Естественно функцию мы можем вызвать обратившись к ней по имени, так же после обращения мы можем передать в нее определенные параметры, и уже после обработки получить нужные нам данные.

Зачастую в программировании функция имеет следующий вид:

funсtion имя_функции(список_парамeтров, через_кому) {
  Блок кода, в котором может быть сколько угодно
  строк, после чего мы можем просто 
  выполнить функцию или даже сделать
  return возврат для вывода информации;
}

Из выше представленного примера, мы видим, что сперва мы объявляем то, что мы будем работать с функцией. После даем ей имя, и оно не может разделяться пробелом либо дефисом.

Далее в скобках мы можем либо передать какие-то параметры, либо оставить их пустыми. Кроме того, мы способны задавать параметры по умолчанию, делается это очень просто: в параметрах задаем значение $var = 1.

Получается, если мы ничего впишем в параметры на входе, то по умолчанию $var будет равен единице.

В общем получается, что функция это небольшая программа, которая может использоваться сколько угодно раз. Кроме того, функция может иметь свою область видимости:

  • public — общедоступная функция, используется по умолчанию;
  • protected — объявление защищенного метода;
  • private — объявление закрытого метода.

В принципе, в любом языке программирования, функция работает более менее одинаково, правда может отличаться лишь синтаксис который объявляет функцию. 

Естественно функцию мы можем объявить, но при этом объявив функцию мы должны определить что она будет делать, но самое главное, она не будет выполнена до тех пор, пока мы ее не вызовем.

Как правильно объявить и вызвать функцию?

Давайте я приведу небольшой простой пример, при котором мы объявим функцию в которой выполним какой-то код, а после вызовем ее и выполним, вместе с чем даже получим какой-то результат.

Те кто захочет запустить этот код, я рекомендую прочитать следующую статью, где мы поставим php локальный сервер, а мы продолжаем.

Давайте я создам функцию вычисления возраста, входными параметрами которой будет ввод даты рождения и имени, а на выходе мы получим строку наподобие “Привет, меня зовут ИМЯ, и мне ВОЗРАСТ лет!”.

<?php
	echo info("05.03.1994","Сергей");
	echo "<br/>".info("05.03.1994");

	function info($date, $name = "PHP") {
		$date_b = new DateTime();
		$interval = $date_b->diff(new DateTime($date)); 
		$age = $interval->format("%Y");
		if($age) {
			$str =  "Привет меня звать $name и мне $age лет!";
		} else {
			$str =  "$name, что-то пошло не так!";
		}
		return $str;
	}
?>

Обратите внимание, мы вызвали программу раньше, чем ее объявили, а все потому что нет разницы в том, когда мы это сделали, главное функция есть и доступна интерпретатору.

Получается, мы создали функцию под названием info, в которой вы передаем два параметра, дату и имя, после чего внутри фигурных скобок, мы пишем нашу программу.

После того, как наша программа готова, мы можем сделать возврат, с помощью return, в который передали переменную $str, после чего уже вызвали функцию и получили определенный ответ.

Да мы вызвали функцию два раза, разница лишь в том, что второй раз мы ничего не задали вторым параметром, но при этом наша программа дала свое имя PHP, и тоже сказала сколько ей лет.

Все потому, что мы в параметрах определили значение по умолчанию.

Если тебе понравилась эта статья, то не забудь поделиться ею в своих социальных сетях, твои действия очень сильно помогли бы мне в продвижении этого проекта, ну и немного мотивации для меня тоже не помешает!

Оставьте комментарий