Отправляет email-рассылки с помощью сервиса Sendsay

PHP-песочница

  Все выпуски  

PHP-песочница Выпуск 18


Php-«песочница»

Выпуск 18
Функции

Здравствуйте. С вами Андрей Чернобай с новым выпуском "PHP - песочницы". Рассылка создана для самых "маленьких" - для тех, кто делает только первые шаги в программировании на PHP. Если Вы хотите двигаться быстрее и освоить создание PHP- сайтов профессионально, рекомендую курс PHP+MySQL для начинающих, потому что в этом курсе собрано всё то, что необходимо именно для создания сайтов, никакой "воды", при этом всё доступно, подробно до мелочей и наглядно.

Для отписки от рассылки внизу страницы есть ссылка. А с остальными продолжим.

Профессиональное программирование не мыслимо без понимания такой вещи, как функция. Поэтому пора восполнить этот пробел в наших знаниях. А потом теорию применить на практике, соорудив какой-нибудь скрипт. (На самом деле, не «какой-нибудь», а я приготовил скрипт для создания на сайте «секретного раздела»; однако без понимания функций нам туда рано!)

Итак, что же такое функция?

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

Если не совсем понятно, просто читайте дальше, думаю, постепенно всё прояснится.

Вообще-то, с некоторыми функциями и их работой мы уже знакомы.  Например, с функциями mail(), fopen(), fclose(), file(), fgets() и др. От других конструкций языка php функция отличается «хвостом» в виде скобок, в которых могут присутствовать некоторые аргументы.

Существует два вида функций:

- зарезервированные функции. Это те, которые изначально разработаны для программирования на php. То есть, все перечисленные выше функции как раз и являются зарезервированными. Назначение и синтаксис всех этих функций можно посмотреть в мануале по php;

- функции, определяемые пользователем. Это функции, которые разрабатываются самим программистом (в нашем случае это мы с Вами) в процессе написания конкретного скрипта (то есть, они больше нигде не встретятся). Такие функции могут быть самыми разнообразными по сложности и применению, а значит, предоставляют больше возможностей. И проблем! Далее будем говорить именно о второй группе функций.

Особенность таких функций в том, что их нужно определять. То есть, перед именем самой функции указать, что перед нами функция, а не что-то ещё. Вот так:

function имя_функции (аргумент 1, аргумент 2, …) { некоторые операции, выполняемые при вызове функции; }

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

Важно: имя функции не должно совпадать с зарезервированной функцией, иначе программа выдаст ошибку! В отличие от переменной, имя функции НЕ чувствительно к регистру ( имя_функции и ИМЯ_ФУНКЦИИ – это одно и то же).

В качестве аргументов функции могут быть переменные или константы. Значения этих переменных будут использоваться потом командами в теле функции.

Внутри функции (между фигурными скобками) может быть любой верный php-код.

Функции могут создаваться в любом месте php-кода, но для удобства лучше это делать в самом начале сценария.

Есть ещё один способ повысить эффективность программирования: выделить функции в отдельный файл (библиотеку) и затем использовать этот файл в разных приложениях, не создавая лишних копий… но об этом когда-нибудь в другой раз. Думаю, пора сваять что-нибудь простое практики для.

Например, посчитать произведение двух чисел.

Пишем код:

<?php
function pr ($a, $b) /* определяем функцию (pr - произведение) и в качестве её аргументов указываем переменные $a и $b */
/* в теле функции пишем, что именно функция должна сделать с переменными */
{
$c = $a * $b;
/* перемножить и результат занести в переменную $c */
echo "$a * $b = $c"; /* и напечатать на странице результат */
}
$a = pr (10, 30); /* а в этом фрагменте наша функция используется с уже конкретными значениями переменных */
?>

Я не случайно разделил код на две части, выделив их разными цветами. Синий – функция и тело функции – прописывается в коде один раз, например, в начале сценария или, вообще, в отдельный файл, как было сказано раньше. А вот зелёный фрагмент можно вставлять в любой участок кода страницы – там, где именно нужно вывести результат работы этой функции, и сколько угодно раз на странице. И значения переменных можно указывать каждый раз разные.

Проверьте, поэкспериментируйте. Думаю, на сегодня теории достаточно.

Вообще-то, всего сказанного ещё не достаточно, чтобы создавать полноценные скрипты с использованием функций. Тема объёмная. Я буду продолжать эту тему в других выпусках. Однако моя задача была подготовить Вас к восприятию скрипта «секретного раздела», чтобы мы хоть чуть-чуть говорили на одном языке. О самом скрипте «секретного раздела» в следующем выпуске.

Успехов.


PHP + MySQL для начинающих


P. S. Остальные уроки Вы найдёте как всегда здесь. Все возникающие вопросы Вы можете задать, прислав мне письмо на электроный адрес (см. подпись к выпуску) или через форму для добавления комментариев на страницах сайта.

Автор расылки: Андрей Чернобай
kapitansg@yandex.ru


В избранное