Значения из функций возвращаются с помощью необязательного оператора return. Может быть возвращён любой тип, в том числе список и объект. Этот оператор немедленно останавливает выполнение функции и передаёт управление обратно на строчку, с которой функция была вызвана. Дополнительно см. return().
| function square ($num){ return $num * $num;}echo square (4); // выводит '16' |
Вы можете возвратить из функции несколько значений, но сходные результаты можно получить путём возвращения списка.
| function small_numbers(){ return array (0, 1, 2);}list ($zero, $one, $two) = small_numbers(); |
Чтобы возвратить из функции ссылку, вы должны использовать операцию ссылки & в объявлении функции и в присвоении возвращаемого значения переменной:
| function &returns_reference(){ return $someref;} $newref =& returns_reference(); |
old_function
Оператор old_function позволяет объявлять функцию с использованием синтаксиса, идентичного PHP/FI2 (вы только обязаны заменить 'function' на 'old_function'.
Эту возможность использовать не рекомендуется, и она должна использоваться только PHP/FI2->PHP 3-конвертером.
| Предупреждение!
|
| Функции, объявленные какold_function, не могут вызываться из внутреннего кода РНР. Помимо прочего это означает, что вы не можете использовать их в таких функциях, как usort(), array_walk() и register_shutdown_function(). Вы можете обойти это ограничение, написав функцию-оболочку (в нормальной форме PHP 3) для вызоваold_function.
|