Урок 13: Пользовательские функции

План:

  • Пользовательские функции

Домашка:

Сделать калькулятор. 3 входящих параметра: 1. Первое число, 2. Второе число, 3. Действие (плюс, минус, умножить, поделить). По примеру: function calc($num1,$num2,$action)

Дополнение к уроку:

Функции - это отдельный независимый ни от кого код, их так же называют подпрограммы. Взаимодействует основной код с функцией через ВХОДЯЩИЕ ПАРАМЕТРЫ и ИСХОДЯЩИЕ ПАРАМЕТРЫ. Внутри функции нельзя использовать переменные, которые могли появиться за её пределами. Если мы вызываем функцию через calc($x), то внутрь функции передаётся не переменная, а её содержание, никакой связи с $x не существует. Функция работает с входящими данными и так же возвращает данные, а не переменную. Если внутри функции написать return $x; то функция вернёт не $x, а её содержание.

Есть стандартные правила хорошего тона по работе с функциями. Следуя им у Вас не будет ошибок:
1) Если какая-либо переменная, которая создана была за пределами функции вроде $_POST, $_SERVER, константа и т.д. доступна внутри функции, то использовать её не надо. Опять же входящие параметры: calc($_POST['x']); Что такое $_POST, $_GET и т.д. Вы узнаете в следующих уроках, но сам принцип того, что не надо трогать внешние данные должен надолго отложиться в Вашем сознании.
2) В функции не должно быть вывода информации на экран, никакого echo. Исключениями могут быть функции, которые созданы для того, чтобы вывести данные на экран. В 99% случаев Вам нужно использовать return. В домашних заданиях мы придерживаемся этих же стандартных правил.

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

При работе с любым заданием бывают моменты, когда нам попадаются подводные камни. Подводные камни - это скрытый функционал, который на первый взгляд не описан в задании, но его необходимо так же выполнить, чтобы сделать хороший код. Этот функционал может быть не описан по той причине, что в начале работы программист не догадывается о том, что эта проблема может случиться, в связи с этим любая разработка кода может затянуться на больший срок и создать дополнительные трудности программисту. Возьмем пример самого простого подводного камня: из школьной программы по математике Вы знаете, что нельзя делать в калькуляторе одну операцию. Так вот, Ваша функция должна предусмотреть эту ситуацию и вернуть ответ: "Эта операция недопустима", а не пытаться её совершить и получить ошибку. Я думаю, что Вы уже догадались о какой операции идёт речь в нашем калькуляторе, а если нет, то я всегда в скайпе :)

Под каждым уроком есть 10 тестов, которые помогут Вам закрепить пройденный материал.
Один из тестов будет развивать Вашу логику и интеллект!
Чтобы получить доступ к тестам - авторизируйтесь!


0%
Главная БАЗОВЫЙ КУРС ПЕРВЫЙ УРОВЕНЬ программирования ВТОРОЙ УРОВЕНЬ верстки ВТОРОЙ УРОВЕНЬ программирования Начать обучение Запуск проекта Мелкие трюки Делимся практикой трудоустройства Проверь свои знания Задачи по PHP MySQL Блог Отзывы