php学习笔记5(自定义函数)

自定义函数

函数的定义:

function 函数名(形式参数1,形式参数2){
函数体 //各种代码
return 表达式 //可以从函数中返回也可以不得返回
}

函数的调用

不管是自定义的函数还是系统函数,不被调用就不会被执行
函数的调用可以在函数前面,后面。
function 函数名(形式参数1,形式参数2){
函数体 //各种代码
return 表达式 //可以从函数中返回也可以不得返回
}
函数名(实际参数1,实际参数2);
在这里插入图片描述
执行过程是相对独立的,执行完成后返回调用的位置继续向下执行。

如果要返回多个值需要用到数组
在这里插入图片描述
然后使用list函数构造
在这里插入图片描述

函数的参数
形式参数由0个,1个或多个变量组成
实际参数由0个,1个或多个参数组成,每个参数是一个表达式,用逗号分隔。
在这里插入图片描述
实参与形参要一一对应。
在这里插入图片描述
函数的返回值
将函数执行的结果返回给调用者,至此此函数截至。

php变量范围

局部变量
在函数内定义的,作用域仅限函数内部。
全局变量
在函数外部定义,它的作用域为从变量定义处开始,到本程序文件的末尾。
在php函数内部无法直接使用全局变量,如需使用必须使用global声明变量
![](https://img-blog.csdnimg.cn/20210502233239696.png在这里插入图片描述

常量可以不用遵守变量的规则
在这里插入图片描述

静态变量
在函数内部定义的使用static关键字来定义的变量
特点:函数执行完毕之后变量不会立即消失,当再次调用函数时,静态变量保存得知仍然存在,并且仅在第一次执行函数的时候会初始化值
在这里插入图片描述
第一次是调用$a的值10,输出11。但第二次时就调用11这个值,输出12。

参数的传递

按值传递参数
默认使用,形式参数与实际参数不互相影响
按引用传递参数
在这里插入图片描述
这里的 $ a= $ i,所以对$ a的操作也是对$i的操作。
形式参数和实际参数是同样的,对形式参数的操作会直接影响到实际参数

函数的默认参数
在这里插入图片描述

给形式参数赋默认值,即使你调用的时候没有输入实参的值,会调用默认值
加默认值的规则:从右往左加,先加形参2再加形参1.

可变长度参数列表

php提供的三个函数

func_get_arge();

在这里插入图片描述

输出的是数组类型,用此函数可以调出实际参数

func_get_arg();

在这里插入图片描述

输出的是获取的第几个实际参数(从0开始计数)如图如果是func_get_arg(0)则输出的就是int 21

func_num_args();

在这里插入图片描述

返回的是传入函数的参数个数

可变函数

直接把函数赋值给变量,变量=’函数名’
可变函数不能用于例如 echo,print,unset(),isset(),empty()以及类似的语言结构,需要使用自己的函数

在这里插入图片描述

递归函数

在这里插入图片描述
&nbsp是空格。
结果为3&nbsp; 2&nbsp; 1&nbsp;0&nbsp;<–>0&nbsp;1&nbsp;2&nbsp;3&nbsp;
3 2 1<–>1 2 3
自己调用自己即为递归函数
函数还会调用回去。
在这里插入图片描述

(执行流程)
函数在被调用的执行过程中会在内存里面分配空间用于存储临时数据,那么函数在执行过程中默认之间没有联系的(除了静态变量,按引用传)里面变量相互之间没有影响。
资料来自添加链接描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值