在编写函数时首先要明白我们希望函数做什么,知道这一点后,编写起来便不会太困难了。
在 PHP 中除了已经给我们提供了数以千计的系统函数之外,还可以根据开发的需要来自定义函数。所谓的系统函数是就在 PHP 中提供的可以直接使用的函数,每一个系统函数都是一个完整的可以完成指定任务的代码段。
在开发时,一些常用的功能可以借助调用系统函数来完成。但是如果某些功能在 PHP 中没有提供系统函数的话,就需要我们自己来定义函数了。完成同样的任务,使用系统函数的执行效率会比自定义函数高,但两种函数在程序中的调用方式是没有区别的。
在 PHP 中声明一个自定义的函数可以使用下面的语法格式:
function 函数名 (参数1, 参数2, ..., 参数n){
函数体;
return 返回值;
}
函数的语法格式说明如下:
因为参数列表和返回值在函数定义时都不是必须的,而其他的部分是必须有的,所以声明函数时通常有以下几种方式。
1) 在声明函数时可以没有参数列表:
function 函数名(){
函数体;
return 返回值;
}
2) 在声明函数时可以没有返回值:
function 函数名(参数1, 参数2, ..., 参数n){
函数体;
}
3) 在声明函数时可以没有参数列表和返回值:
function 函数名(){
函数体;
}
不管是自定义的函数还是系统函数,如果函数不被调用,就不会执行。只要在需要使用函数的位置,使用函数名称和参数列表进行调用即可。
函数被调用后开始执行函数体中的代码,执行完毕返回到调用的位置继续向下执行。所以在函数调用时函数名称可以总结出以下三个作用。
提示:只要声明的函数在脚本中可见,就可以通过函数名在脚本的任意位置进行调用,在 PHP 中可以在函数的声明之后调用,也可以在函数的声明之前调用,还可以在函数中调用函数。
【示例】将我们讲解 for 循环时打印九九乘法表的程序封装到函数中,代码如下所示:
<?php function table(){ //定义函数 for ($i = 1; $i <= 9; $i++) { for ($j = 1; $j <= $i; $j++) { echo $j.' * '.$i.' = '.$i*$j.' '; } echo '<br>'; } } table();//调用函数 ?>
运行结果如下:
1 * 1 = 1
1 * 2 = 2 2 * 2 = 4
1 * 3 = 3 2 * 3 = 6 3 * 3 = 9
1 * 4 = 4 2 * 4 = 8 3 * 4 = 12 4 * 4 = 16
1 * 5 = 5 2 * 5 = 10 3 * 5 = 15 4 * 5 = 20 5 * 5 = 25
1 * 6 = 6 2 * 6 = 12 3 * 6 = 18 4 * 6 = 24 5 * 6 = 30 6 * 6 = 36
1 * 7 = 7 2 * 7 = 14 3 * 7 = 21 4 * 7 = 28 5 * 7 = 35 6 * 7 = 42 7 * 7 = 49
1 * 8 = 8 2 * 8 = 16 3 * 8 = 24 4 * 8 = 32 5 * 8 = 40 6 * 8 = 48 7 * 8 = 56 8 * 8 = 64
1 * 9 = 9 2 * 9 = 18 3 * 9 = 27 4 * 9 = 36 5 * 9 = 45 6 * 9 = 54 7 * 9 = 63 8 * 9 = 72 9 * 9 = 81
【示例】下面我们来定义一个函数,来实现简单的加法运算,代码如下所示:
<?php function add($num1,$num2){ $a = $num1 + $num2; return $a; } $sum = add(11,5); echo '$sum = '.$sum.'<br>'; echo '6 + 33 ='.add(6,33).'<br>'; echo '42 + 21 ='.add(42,21).'<br>'; echo '167 + 153 ='.add(167,153); ?>
运行结果如下:
$sum = 16
6 + 33 =39
42 + 21 =63
167 + 153 =320
更多...
加载中...