52568.fb2 Курс "Язык программирования PHP" - читать онлайн бесплатно полную версию книги . Страница 28

Курс "Язык программирования PHP" - читать онлайн бесплатно полную версию книги . Страница 28

<?

$make = true;

/* здесь нельзя вызвать Make_event();

потому что она еще не существует, но можно

вызвать Save_info() */

Save_info("Вася","Иванов",

"Я выбрал курс по PHP");

if ($make){

// определение функции Make_event()

function Make_event(){

echo "<p>Хочу изучать Python<br>";

}

}

// теперь можно вызывать Make_event()

Make_event();

// определение функции Save_info

function Save_info($first, $last, $message){

echo "<br>$message<br>";

echo "Имя: ". $first . " ". $last . "<br>";

}

Save_info("Федя","Федоров",

"А я выбрал Lisp");

// Save_info можно вызывать и здесь

?>

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

<?php

/* нельзя сохранить данные, т.е. вызвать

функцию DataSave() до того, как выполнена

проверка их правильности, т.е. вызвана

функция DataCheck() */

DataCheck();

DataSave();

function DataCheck(){

// проверка правильности данных

function DataSave(){

// сохраняем данные

}

}

?>

Рассмотрим подробнее аргументы функций, их назначение и использование.

Аргументы функций

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

С помощью аргументов данные в функцию можно передавать тремя различными способами. Это передача аргументов по значению (используется по умолчанию), по ссылке и задание значения аргументов по умолчанию. Рассмотрим эти способы подробнее.

Когда аргумент передается в функцию по значению, изменение значения аргумента внутри функции не влияет на его значение вне функции. Чтобы позволить функции изменять ее аргументы, их нужно передавать по ссылке. Для этого в определении функции перед именем аргумента следует написать знак амперсанд «&».

<?php

// напишем функцию, которая бы добавляла

// к строке слово checked

function add_label(&$data_str){

$data_str .= "checked";

}