自定义函数
自定义函数的格式:
function 函数名 {
代码块;
}
函数的执行,直接放入函数名即可
上例子
而且,一经定义,全文使用
例如
形参,实参
这个例子属实有些许潦草不过相信你们一定能看懂
当然,参数也能是变量
返回值
return
将值返回给调用者如下图所示
superd1ng(2,3)函数调用后,函数superd1ng将2+3的值返回给superd1ng
如果不写则返回null
return第二个作用,结束函数的运行。
如上图所示,函数中输出$a,并未被执行。
变量
局部变量
只在函数内部执行,在函数外部被执行后是错误的
如下图$a为空
全局变量
顾名思义,全局有效,但是函数内部没用。如果在函数中有需要,可以用global函数
define()一个常量,能在函数中使用。
静态变量
static
只在函数中被定义,但是不是储存在函数中,但是调用函数后不会被立刻清除,并且定义初始值的那行代码只被运行一次,再次调用此函数就不再执行此行代码了。
如图所示,第二次调用函数的时候,$a的值依然存在,并且是上次调用的结果的值
参数的传递
1.按值传递参数(默认的)
对形式参数的操作不会影响到实际参数
按引用传递参数
跟上图恰恰相反,对形参的操作会影响到实参
只需在定义函数的时候在参数前加一个&符号。
如下
3.函数的默认的参数
在定义的函数中对$a赋值,在调用的时候,如果不传入值,则对定义时赋的值进行运算,如果输入值,则对输入值进行运算。
并且遵循一个规则,从右向左赋值
因为调用函数赋值时,只能从左到右赋值。
4.可变长度参数数列
可返回输入,输入的数值,但是是数组类型的数据
func_get_args()型
如下图,返回输入的值
func_get_arg()类型
我废话少说,直接上图,通俗易懂
3.func_num_args()类型
输出,输入值的个数,如图。
可变函数(变量函数)
把函数赋值给变量。
如下图
只需将函数名,用单引号括起来即可赋给变量即可。
递归函数
在函数内部,自己调用自己的函数。类似c语言
就上图,原理如下
首先输出2,再判断2是否大于0,然后在此调用函数text,此时调用值为1,然后再与0判断,再调用函数text,此时调用值为0,不比0大,输出else后内容,然后返回值。(这里确实有点绕,不明白为什么要返回值求大佬解惑)
内部函数
PHP提供了许多内置或现成的结构,我们可以在实际的开发中直接使用。
按需了解