PHP高级编程中关于PHP函数的介绍
admin
2023-06-22 03:21:28
0次

PHP函数

在PHP中,函数是一段PHP代码的集合,通过调用函数就可以执行一些任务或返回一些结果。PHP脚本通常是由主程序和函数构成的,这些函数不仅构成了PHP脚本的主要功能,也实现了程序代码的结构化,方便他人阅读。

函数可以分为用户自定义函数和系统函数,用户自定义函数是有用户自行编写实现的,功能也由用户所编写的代码来决定。系统函数是PHP系统或扩展库内置的函数,这些函数一般已经存在,直接调用即可。

一、用户自定义函数

定义函数的格式如下:

function function_name([$parameter[,...]])
{
    //函数代码段
}

定义函数的关键字为function。function_name是用户自定义的函数名,通常这个函数名可以是以字母或下划线开头后面跟0个或多个字母、下划线和数字的字符串,且不区分大小写,需要注意的是,函数名不能与系统函数或用户已经定义的函数重名。

$parameter为函数的参数,函数一般可以有0个或多个参数。当参数个数为0时,函数可以被直接调用,当参数个数不为0时,用户在调用时就需要提供有效的参数。

在函数定义时,花括号内的代码就是在调用函数时将会执行的代码,这段代码可以包括变量、表达式、流程控制语句,甚至是其他的函数或类定义。

二、参数的传递

一般情况下,参数是通过值来传递的。通过值传递参数不会应为函数内部参数值的变化而改变函数外部的值。

如果希望函数修改外部传来的参数值,可以使用引用参数传递,只要在定义函数时在参数前面加上“&”。

函数还可以使用默认参数,在定义函数时给参数赋予默认值,参数的默认值必须是常量表达式,不能是变量、类成员或函数调用。在使用默认参数时,任何默认参数都要放在非默认参数的右侧,否则函数可能不会按预期情况工作。

三、函数的作用域

在主程序定义的变量和在函数中定义的变量都是局部变量。在函数中定义的变量只能在函数内部使用。在主程序中定义的变量只能在主程序中使用,而不能在函数中使用。如果要使函数中的变量作用于函数外部,需要使用global关键字将变量声明为全局变量。函数中的变量还可以声明为静态变量,函数被调用完后静态变量的值并不丢失,在下次调用该函数时,静态变量的值是上次调用函数时赋的值。

四、函数的返回值

函数声明时,在函数代码中使用return语句可以立即结束函数的运行,程序返回到调用该函数的下一条语句。

中断函数执行并不是return语句最常用的功能,许多函数使用return语句返回一个值来与调用它们的代码进行交互。函数的返回值可以是任何类型的值,包括列表和对象。

五、函数的调用

函数在声明后就可以被调用。函数如果没有返回值,调用时使用函数名即可。如果函数具有返回值,则可以将函数的返回值赋给一个变量。

六、递归函数

PHP支持递归函数,递归函数就是调用函数本身,可以实现循环的作用。

使用递归函数时一定要给出递归的终止条件,否则函数将一直执行下去直到服务器内存耗尽,或达到最大调用次数。

七、变量函数

PHP中有变量函数这个概念,在变量的后面加上一对小括号就构成了一个变量函数。

如果创建了变量函数,PHP脚本运行时将寻找与变量名相同的函数,如果函数存在,则尝试执行该函数,如果不存在则产生一个错误。为防止这类错误,可以在调用变量函数之前使用PHP的function_exist()函数来判断该变量函数是否存在。

变量函数不能用于语言结构,如echo()、print()、unset()、include()、require()、isset()。

八、系统函数

用户自定义函数可以进行逻辑运算,而大部分的系统底层工作需要由系统函数来完成。

PHP系统了丰富的系统函数供用户使用,包括文件系统函数、数组函数、字符串函数等。并不是所有的系统函数都能直接调用,有一些扩展的系统函数需要安装扩展库之后才能调用。当前运行环境支持的函数列表可以在phpinfo页面查看。

相关内容

热门资讯

空调连续工作多久需要停机休息 空调连续工作的时间取决于多个因素,包括空调的型号、功率、使用环境和维护情况等。一般来说,空调可以连续...
空调哪个符号是除湿的 空调除湿功能通常用一个水滴形状的符号表示。不同品牌和型号的空调遥控器可能会有所差异,但一般来说,除湿...
格力空调多长时间加一次氟利昂 1、一般情况下,空调对氟利昂的使用量是非常小的,所以在空调使用了四年左右的时候再考虑加也没问题。2、...
空调用多长时间需要加氟一次 一般情况下是五年。当出现以下这几种情况时,空调才需要加氟。1、空调的室内机和室外机各有两个接口,当接...
格调生活·C标思享荟:卡萨帝在... 9月12日的郑州龙湖金融岛,夜风轻拂,灯光璀璨。“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑...
品牌价值破千亿、高端份额持续领... 9月12日,“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑州站”在郑州龙湖金融岛举办。2026...
空调主板坏了修800还是换新的 空调主板坏了是修还是换新,需要考虑多个因素,以下是一些建议:1. 维修成本:如果维修费用较低,比如 ...
空调开多久需要休息多长时间 问题:空调开多久需要休息多长时间回答:1、在使用空调的过程中,一般空调开7~8个小时左右需要休息2~...
中央空调多长时间清洗一次 1、一般空调开机前清洗一次即可,空调开机中间时段再清洗一次,空调关机时清洗一次,这样比较合理。2、空...
中央空调氟利昂多久加一次 看空调制热和制冷程度,很多人的观点认为氟利昂必须一年放一次,其实这个观点是错误的,理解上面有点偏差,...