任何有效的 PHP 代码都有可能出现在函数内部,甚至包括其它函数和类定义。
函数名和 PHP 中的其它标识符命名规则相同。有效的函数名以字母或下划线打头,后面跟字母,数字或下划线。可以用正则表达式表示为:[a-zA-Z_x7f-xff][a-zA-Z0-9_x7f-xff]*。
<?php function foo() { function bar() { echo "I don't exist until foo() is called. "; } } /* 现在还不能调用bar()函数,因为它还不存在 */ foo(); /* 现在可以调用bar()函数了,因为foo()函数 的执行使得bar()函数变为已定义的函数 */ bar(); ?>
递归函数
<?php //递归函数 function recursion($a) { if ($a < 20) { echo "$a "; recursion($a + 1); } } print_r(recursion("$a"));//1,2,3,,,,,,19 ?>