函数调用
函数执行后, 总是返回到之前调用它的地方. 多个函数互相调用时, 代码的执行顺序如下图:
1.变量函数
函数名 是个变量, 调用函数使用的不是直接的函数名,而是一个变量
function xxoo()
{
echo 231;
}
function a()
{
echo "a";
}
function b()
{
echo "b";
}
function c()
{
echo "c";
}
//$x = xxoo;
$x = $_GET['$x']; //这中方法要记住 写活它 传什么调用什么
$x( ); // 相当于调用了 xxoo()
2.匿名函数
也叫闭包函数 允许指定一个没有名称的函数。通常把函数定义代码赋值给一个变量,通过变量来调用
$n = 10;
//$xx(); 匿名函数不能把调用放在声明 前面
$xx = function() use($n) //匿名写法 //我给他一个名字
{
echo $n =$m;
echo ' 我是一个没有名字'
}; //记得加分号
$xx(5);
自己调用自己
(function (){
echo 123;
})()
回调函数
指调用函数的时候将另一个函数作为参数传递到调用的函数中,而不是传递一个普通的变量作为参数
使用回调函数是为了可以将一段自己定义的功能传到函数内部使用
function func ($m)
{
// echo '大饼卷一切';
return $m;
// echo $m;
}
function int($a,$x)
{
// $x();
echo $a+$x(5);
}
int(2,'func');
递归函数
函数内部可以调用其它函数. 递归函数可以看成 函数在内部调用自己.
函数自己调用自己, 会造成死循环. 必须满足某些条件后, 使它不会调用自己.
一般, 当参数满足某个条件时,就不调用自己
/* 该函数只作说明, 没有实际意义 */
function xxoo( $n )
{
echo $n;
if ($n > 1) {
// 当参数大于1时, 调用自己
xxoo( $n-1 );
}
echo $n;
}
xxoo( 5 )
//递归累加
function</