自定义函数

自定义函数也叫构造函数。
 
格式:
Function funname (arg1, arg2,  arg3…….)
{statement
Return valiues
}
 
参数列表,每个参数用逗号隔开。
例子:function fun($m, $n){    //定义了一个自定义函数的两个参数$m $m
If($==0 || $n==0){            //判断参数是否为0
Return 0;}                 //返回 0   
Else{$a=$n*$m;            //做平方运算 
Return $a;                //返回平方值
}                       //结束if
}                      //结束 function
$p=2;
$h=3;
Echo fun ($p $h)
说明:上面种的fun 里面的定义了的是函数的参数的个数,fun后面的$m,$n只代表了下面条件的一个$==0 || $n==0,与下面的$p,$h没关,当我们定义了两参数,下面的也需对应两个参数。如果少了,可能会报错。
下面使用动态参数:
例子:function fun($m,$n=1,$x=2){    //定义了三个参数,但后面两个参数给了初始值;
$a=$m*$n*$x;                 
Return $a;
}
$p=2;
Echo fun( $p);                     //当给一个参数时,结果:2*1*2
Echo fun($p,3);                   //当个出两个参数是,结果:2*3*2
Echo fun($p,3,3)              //当给出三个参数时,结果:2*3*3
 
 
1.PHP自定义函数应用传递
例子:function fun(&$n)   //在参数前面加&
     {
    $n=$n*$n;         //$n运算后重新赋值给$n,$n的值值被改变。
     }               //
    $p=2;           //
$p2
   Fun ($p);         //参数$p的值被改变
  Echo $p;         //$p4
上面没有出现return,那就是说没返回值。之前使用的都是返回到函数名上面。引用传递也叫做地址映射的,&是内存地址的一个功能。Return在自定义函数里面只能出现一次,多次的话值执行一个return:
2.PHP自定义函数的嵌套
 function cl($v,$b)    //简化常量cl;
{ define ( $v, $b);
         }
cl("NA","PHP100");
echo NA;          //输出结果为PHP100;
 
3.PHP自定义函数的递归。
递归就是自己包含自己。
 
  function fun1($n){                 
       if($n==1){
       return 1;
       }else{
       return $n*fun1($n-1);
       }
  }
  echo fun1(1)."<br>";             //没有递归
  echo fun1(2)."<br>";             //递归1次,调用本身1
  echo fun1(3)."<br>";             //递归2次,调用本身2
  echo fun1(4)."<br>";             //递归3次,调用本身3
  echo fun1(5)."<br>";             //递归4次,调用本身4