PHP 5 для начинающих |
Страница 249 из 813 Функции можно передать несколько параметров, но они должны быть отделены друг от друга с помощью запятой, например: /unction bonus($total_sales, $bonus_factor) { $bonus = $total_sales * $bonus_factor; return $bonus; } Теперь, чтобы вызывать модифицированную функцию расчета премии, необходимо передать ей два значения: total_sales и bonus_factor. $total_sales = 120000; $bonus_factor = 0.15; echo (bonus($total_sales, $bonus_factor)); Функции можно определять в любом месте PHP-программы. Обычно функции определяют в отдельном файле и просто подключают его (с помощью функций include или require) в начале главного файла сценария. Определять или инициализировать переменные перед тем, как определяется функция, необязательно; однако необходимо убедиться, что они определены или проинициализированы перед вызовом функции. Например, следующий код работает:<?php $total_sales = 190999; // здесь начинается выполнение $bonus_factor = 0.15; echo (bonus($total_sales, $bonus_factor)); // здесь функция вызывается function bonus($total_sales, $bonus_factor) // здесь функция определяется { $bonus = $total_sales * $bonus_factor; return $bonus; } ?> Но и представленный ниже код работает также хорошо:<?php function bonus($total_sales, $bonus_factor) // здесь функция определяется { $bonus = $total_sales * $bonus_factor; return $bonus; } $total_sales = 190999; // здесь начинается выполнение $bonus_factor = 0.15; echo (bonus($total_sales, $bonus_factor)); // здесь функция вызывается ?> Необходимо сделать важное замечание о работе функций. Чтобы передавать значения в функцию, можно использовать любые имена переменных. Например, предположим, что вместо использования одних и тех же имен ($total_sales и $bonus_factor) как вне, так и внутри функции, используются имена $out_total_sales и $out_bonus_factor для переменных, существующих за пределами функции, а внутри функции используются имена $in_total_sales и $in_bonus_factor. Такой код работал бы, и выглядел бы он следующим образом:<?php function bonus($in_total_sales, $in_bonus_factor) // здесь функция определяется { $bonus = $in_total_sales * $in_bonus_factor; return $bonus; } $out_total_sales = 190999; // здесь начинается выполнение $out_bonus_factor = 0.15; echo (bonus($out_total_sales, $out_bonus_factor)); // здесь функция вызывается ?> |