Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Vtoraya_chast_uchebnika_po_WWW_Okonchat_variant...doc
Скачиваний:
33
Добавлен:
27.09.2019
Размер:
6.06 Mб
Скачать

Пример 4‑511

<body>

<h2> Вложенные функции и файлы </h2>

<?php

//Первый пример - использование вложенной функции

function vkl_func() //включающая(внешняя) функция

{

echo "Это напечатала включающая функция при её вызове!<br><br>";

function vlog_func()//вложенная (внутренняя) функция

{

echo "Наша вложенная функция делает единственное:<br>";

echo "печатает данный текст!<br><br>";

}

}

vkl_func();

vlog_func();

echo "Переход ко второму примеру - использованию вложенных функций.<br><br>";

//Конец примера использования вложенной функции

//----------------------------------------------

//Второй пример - использование вложенного файла

$R = 10.00;

//define("Pi",3.14159);

// include ("constanta_Pi.php");

include ("constanta_Pi.inc");

/*

function S_KRUGA($R)

{

$S = 2*Pi*$R;

return $S;

}

*/

include ("func_S_Kruga.php");

echo "Площадь круга с радиусом ", $R," равна ", S_KRUGA($R),"<br>";

//Конец примера использования вложенного файла

?>

</body>

4.6.4. Обработка ошибок в функциях пользователя

Очевидно, что в процессе выполнения функций могут возникнуть ошибки. Имеется в виду не ошибки синтаксиса, которые исправляются в процессе написания кода, а вычислительные. Например, обращение к файлу, которого нет, деление на ноль, возведение числа в очень большую степень. Возникает вопрос, что в этом случае возвратит функция в вызвавший её скрипт?

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

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

Существует ещё один способ обработки значения FALSE, которое может вернуть та или иная функция.

Это использование системной функции die. Она не возвращает значения (и в этом смысле является «пустой» - void), но выводит строковое сообщение.

Её синтаксис представлен ниже:

void die(string message).

Эта функция прекращает действие скрипта.

Пример 4-22 показывает, как можно использовать рассмотренные возможности возврата функцией значения FALSE

Пример 4‑22

<?php

function obratn_znach($chislo)

{

if($chislo != 0)

{return 1/$chislo;}

else

{return FALSE;}

}

$x = 0;

//$x = 4;

$y =obratn_znach($x);

if($y == FALSE)

{ echo "Вычисление числа, обратного X, невозможно,<br>";

echo "так как X = 0; <br>";}

else

echo "1/x = ",$y,"<br>";

$y =obratn_znach($x)

or die ( "Вычисление числа, обратного X, невозможно!!<br>");

echo "Значение x = ", $x, "<br>";

?>