系统函数
如phpinfo() ;这就是一个系统函数了,关于系统函数我们不多说,直接参考php教程或手册都会有。
用户自定义函数
php 引入函数的概念使程序变得简洁,运算效率更快。函数是实现某种功能的一段程序,这段程序相当于一个模块,需要时用一些简单的命令就可以调用出来使用,不用每次都重新编写。就好象电脑,我们不需要了解里面的复杂结构,只要了解它提供的功能直接使用即可。
php自定义函数-php虽然内置了很多实用的函数,可是不可能满足实际设计的需要,这时我们就需要自己创建函数。
基本结构形式:
代码如下 | 复制代码 |
function 函数名(参数){ 语句体 } |
function为声明函数;
函数名必须唯一,和变量名不同的是函数名不区分大小写;
function和函数名之间必须要有空格;
参数可以省略,也可以添加多个参数,用英文逗号隔开。
php调用函数-当我们定义了函数后,就可以通过以下结构形式对函数进行调用:
函数名(参数)
参数可以省略,但必须保留括号。
实例:
代码如下 | 复制代码 |
<?php function e(){ $i=5+6; echo $i; } e(); ?> |
函数的传递参数
如果函数定义了参数,那么在调用函数时就必须注意参数值的传递问题。php函数参数传递的方式有两种:按值传递和引用传递,默认为按值传递。
1、按值传递:
实例1:
代码如下 | 复制代码 |
<?php function sum($num,$price){ $total=$num*$price; echo "总价格为:$total"; } sum(10,78); ?> |
默认参数
php函数默认参数-如果用一个函数时并没有提供该参数的值,那么该参数将使用函数制定的默认值,默认值必须已经在函数定义时赋值。
实例:
代码如下 | 复制代码 |
<?php function add($a,$b=10){ /* 定义变量$b默认参数 */ $sum=$a+$b; echo $sum ."<br>"; } add(1,5); /* 按值传递参数代替默认参数 */ add(1); /* 没有给$b传递参数将采用默认值 */ ?> |
函数返回值
我们在设计程序时,很多时候不希望将函数的运行结果直接在浏览器显示出来,这时可以通过return语句先将函数值调用出来再进行其它操作。
php函数返回值实例:
代码如下 | 复制代码 |
<?php function add($a,$b=10){ $sum=$a+$b; return $sum; /* 将$sum的值赋给函数 */ } $sum=add(1,5); /* 这里变量$sum得到函数的值 */ echo $sum ."<br>"; ?> |
函数嵌套调用
函数的内部不但可以是一般的执行语句,也可以是函数,这就是php函数嵌套的用法。
函数嵌套只一个函数里面还调用了其它函数,这里要理解的是各函数均处于平行关系,函数的定义是独立的。就像一个容器里面可以放置很多个小容器,而这些容器彼此独立,各自容纳自己的东西。
实例:
代码如下 | 复制代码 |
<?php function volume($l,$w){ function height($a){ $a=$a/2; return $a; } $a=$l*$w; $v=$a*height($a); echo $v; } volume(8,3); ?> |
函数递归调用
什么是php递归函数?在解释这个概念之前,我们先来看一个数学例子。如果要算出n的阶乘,即n!,则首先应该知道(n-1)!,而要知道(n-1)!,又必须知道(n-2)!。以此类推,直至1!=1,再返回计算2!,3!…(n-1)!,n!,才能最终得出n阶乘的结果。
php函数递归调用的含义就是函数能够调用自身,这种直接或者简介调用函数本身的操作在php语言中是允许的,成之为递归函数。
实例:
代码如下 | 复制代码 |
<?php function calculate($n){ if($n==0) return 1; else return $n*calculate($n-1); } $s=calculate(3); echo $s; ?> |