函数,我的理解是:函数的英文是function ,也就是有功能的意思,函数就是一个功能,比如is_array($arr)的是一个判断数据是否是数组的功能。
在编程过程中,需要处理很多的问题,这就需要函数来帮助完成一些自己需要的功能。
在php中,定义函数的格式如下:
function 函数名 (parameter){
...//函数的功能实现
}
例子:
<?
function max($a,$b) {
if($a > $b) return $a;
else return $b;
}//用于判断最大值的函数
?>
另外,函数的变量只能在函数的范围内使用,超出了函数的定义范围是无效的。但是可以使用全局变量,这样就可以在函数内部和外部对变量进行操作。使用global系统函数定义全局变量。这样可以就接受到函数外面的变量。
例子:
<?
$a = 90;
function func($value1,$value2) {
global $a;
$sum = $value1 + $value2+$a;
return $sum;
}
echo func(2,5);
?>
运行结果是:97。
判断一个函数是否存在时可以使用function_exit(function name);函数,返回值是布尔值。如果是函数则返回1,反之返回0。
函数值的接收和选择性接收:
函数值的接收就是在函数里面使用函数参数名相同的参数,这样就可以简单地接收参数的值,这就叫做接收。
而选择性接收意思就是当调用函数时如果有参数传递过来,则选择传递过来的参数,如果没有的话则使用初始化的值。下面通过例子解释:
<?
function print($val1,$val2 = 1) {
$sum = $val1 + $val2;
return $sum;
}
echo print(6);
?>
运行结果是7;
<?
function print($val1,$val2 = 1) {
$sum = $val1 + $val2;
return $sum;
}
echo print(6,8);
?>
运行结果是14。
因为第一段代码中只传递了一个参数,所以val1接收了6的值,而val2则使用初始化的值1.所以结果是7;但是第二段代码中传递了两个参数,此时val2的值也被改变了,所以结果是14。
引用返回值,使用&符号。就是说使用&符号可以直接在函数里面修改变量的值,而不用使用返回。下面有一个例子:
<?
$b = 1;
function mul(&$b) {
$a = 1;
$b = $a + 5;
}
mul($b);
echo $b;
?>
上面的代码定义了变量b之后,通过执行函数mul,因为使用了&符号,所以可以直接修改变量b的值。