Объектно-ориентированный язык сценариев php, страница 7

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

2.  Напишите программу, которая выводила бы все нечетные числа от 1 до 100.

П.4.Функции

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

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

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

 Пример 1.1. Первая PHP-программа

<?php

             print "Люди чаще капитулируют, чем терпят крушение.";

?>

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

Создание пользовательской функции

Попробуем самостоятельно создать некоторую функцию. Разберем небольшой пример.

Пример 4.1 Определение функции

<?php

function bigprint()

{

      print "<h1> Люди чаще капитулируют, чем терпят крушение.</h1>";

}

bigprint();

?>

Для создания (определения) функции используется ключевое слово function. Имя функции указывается после ключевого слова function, а после него следует пара скобок. Если вы хотите, чтобы ваша функция принимала несколько аргументов, то должны поместить в скобках несколько имен переменных, разделив их запятыми. Потом, в теле функции, эти переменные получат те значения, которые вы укажете при вызове функции. Даже если ваша функция не использует никаких аргументов (как в нашем примере), вы все равно должны после ее имени поставить пару скобок.

Наша программа просто выводит на экран браузера строку, обрамленную тэгами заголовков <h1>. Вэтой программе определена функция bigprint(), не использующая аргументов. Поэтому скобки были оставлены пустыми. После строчки, в которой мы задаем имя и список принимаемых аргументов нашей функции – function bigprint(), идет тело функции, обрамленное фигурными скобками. В теле функции происходит вызов функции print, которой в качестве аргумента передается строчка, заключенная между тегами <h1>.

Последней строчкой нашей программы является непосредственный вызов функции bigprint().

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

Рассмотрим пример определения функции, которая принимает аргументы и делает с ними нечто осмысленное.

Пример 4.2 Определение функции с аргументами

<?php

function bigprint($text)

{

      print “<h1> $text</h1><br>”;"<h1> $text</h1><br>";

}

bigprint("Люди чаще капитулируют, чем терпят крушение.");

bigprint("У счастливых цифр много нулей.");

?>

Теперь наша функция bigprint должна получать аргумент – строку, поэтому необходимо было при определении функции поместить в скобки переменную $text. Значение, переданное функции при вызове, будет записано в эту переменную. В теле функции мы выводим переменную $text, обрамленную тэгами <h1>, и тэг перевода строки <br>. Так как мы вызывали функцию bigprint два раза, то результатом работы данной программы будут две разные строчки (при вызове передавались разные значения), оформленные как заголовки первого уровня, причем вывод каждойуровня. Причем каждый вывод текста на экран браузера будет начинать с новой строки благодаря тэгу <br>.