PHP函数

定义和调用函数:

概念:将一些重复使用到的功能写在一个独立的代码块中,在需要时单独调用(封装方法)。
语法格式:
    function fun_name($str1,$stgr2…$strn){
    fun_body;
    }
参数说明:
function:为声明自定义函数时必须使用到的关键字。
fun_name:为自定义函数的名称。
$str1…$strn:为函数的参数。
fun_body:为自定义函数的主体,是功能实现部分。
调用函数:当函数被定义好后,所要做的就是调用这个函数。调用函数的操作十分简单,只需要引用函数名并赋予正确的参数即可完成函数的调用。
   function multiply($num=100){
   return "$num * $num = ".$num * $num;
   }
   echo multiply(10);
?>

函数间传递参数:

      在调用函数时,需要向函数传递参数,被传入的参数称为实参,而函数定义的参数为形参。参数传递的方式有按值传递按引用传递默认参数3种。
      1.按值传递方式:将实参的值复制到对应的形参中,在函数内部的操作针对形参进行,操作的结果不会影响到实参,即函数返回后,实参的值不会改变。function metric( $m ){                                //定义一个函数
      $m = $m * 5 + 10;
      echo "在函数内:\$m = ".$m;              //输出形参的值
}
$m = 1;
metric( $m ) ;                                              //传值:将$m的值传递给形参$m
echo "

在函数外:\$m = $m

" ;      //实参的值没有发生变化,输出m=1
      2.按引用传递方式:按引用传递就是将实参的内存地址传递到形参中。这时,在函数内部的所有操作都会影响到实参的值,返回后,实参的值会发生变化。引用传递方式就是传值时在原基础上加&号即可。
     3.默认参数:还有一种设置参数的方式,即可选参数。可以指定某个参数为可选参数,将可选参数放在参数列表末尾,并且指定其默认值为空。
       function tax($price, $tax=""){
           $price=$price + ($price * $tax);
           echo "价格: $price
";
       }
       tax(100,0.25);        //为可选参数赋值0.25
       tax(100);              //没有给可选参数赋值
?>

从函数中返回值:

       通常,函数将返回值传递给调用者的方式是使用关键字return。return将函数的值返回给函数的调用者,将程序控制权返回到调用者的作用域。return语句只能返回一个参数,也即只能返回一个值,不能一次返回多个。如果要返回多个结果,就要在函数中定义一个数组,将返回值存储在数组中返回。

变量函数:

      php支持变量函数的概念。这意味着如果一个变量名后有圆括号,php 将寻找与变量的值同名的函数,并且将尝试执行它。除了别的事情以外,这个可以被用于实现回调函数,函数表等等。变量函数不能用于语言结构,例如 echo(),print(),unset(),isset(),empty(),include(),require() 以及类似的语句。需要使用自己的外壳(包装)函数来将这些结构用作变量函数。     
      function bar($arg = ''){
          echo "In bar(); argument was '$arg'./n";
      }     
     $func = 'bar';
     $func('test');

对函数的引用:

引用不仅可用于普通变量、函数参数,也可作用于函数本身。
       function &plus(){                //别忘了加“&”   
            static $num =0;            //定义一个静态的变量'$num'  
           $num++;   
           return $num;
      }
      $n  = plus();
      echo $n.'
';              //这一行输出结果是1
      echo plus().'
';         //这一行输出结果是2
      $n  = &plus();
      echo $n.'
';             //这一行输出结果是3
      $n  = 6;
      echo plus().'
';         //这一行输出结果是7

取消引用:

       当不再需要引用时,可以取消引用。取消引用使用unset()函数,它只是断开了变量名和变量内容之间的绑定,而不是销毁变量内容。
  取消引用后对原变量没有任何影响。     
  $num = 1234;           //声明一个整型变量       
  $math = &$num;      //声明一个对变量$num的引用$math       
  echo "\$math is:  ".$math."
";     //输出引用$math      
  unset($math);                                   //取消引用$math       
  echo "\$math is: ".$math."
";     //再次输出引用       
  echo "\$num is:  ".$num;                 //输出原变量

书写规范:

关键字,小括号,函数,运算符
不要把小括号和关键字紧贴在一起,要用空格隔开它们。如:
if ($expr){         //if和“(”之间有一个空格

} 运算符与两边的变量或表达式要有一个空格。
while ($boo == true){        //$boo和“==”,true和“==”之间都有一个空格

}
当代码段较大时,上、下应当加入空白行,两个代码块之间只使用一个空行

方法中的参数命名
使用驼峰命名法,也可使用下划线命名法
如以下代码:
class EchoAnyWord{
function echoWord($firstWord,$secondWord){

}
}

全局常量
常量/全局常量,应该全部使用大写字母,单词之间用'_'来分隔,使大小写敏感。如:
define('DEFAULT_NUM_AVE', 90);
define('DEFAULT_NUM_SUM', 500);

你可能感兴趣的:(PHP函数)