博客列表 >php之函数的语法、类型、返回值及参数

php之函数的语法、类型、返回值及参数

MUZILE
MUZILE原创
2020年05月12日 22:47:53962浏览

函数

1. 语法

函数是实现代码复用的重要方式,在所有编程语言中均如此

  1. function 函数名称(类型: 参数列表): 返回值类型
  2. {
  3. // 函数体
  4. return 返回值;
  5. }
序号 名称 描述
1 function 声明函数
2 函数名称 符合 PHP 标识符命名规范,不区分大小写
2 参数列表 零个或多个接收外部传入到函数的变量
2 {... 创建出一个封闭的函数作用域
2 函数体 由零个可多个合法的 PHP 语句组成
2 return 值 将执行结果返回函数调用者[可选]
2 ...} 函数执行结束,如果没有return,则返回null

2. 类型

序号 类型 语法 描述
1 自定义函数 function getName(){...} 用户根据业务需求创建
2 系统函数 substr(), count()... 也叫预定义函数,不必声明直接调用
3 可变函数 $funcName(); 函数名使用变量表示
4 匿名函数 $f = function (){...} 也叫”闭包”或”函数表达式”,常用做回调处理

3. 返回值

  • 函数必须要有返回值
  • 函数必须是遵守单值返回原则
序号 场景 描述
1 return 可以返回任何类型的值,包括函数类型
2 return 遇到}也会返回, 默认返回null
  • 如果需要返回多个值,可以通过以下手段
序号 返回值类型 描述
1 string 字符串拼接
2 array 数组
3 json JSON 字符串
4 serialize 序列化字符串

json 和序列化,使用时需要进行解码操作


4. 参数

  • 调用者可以通过参数将数据传递到函数中
  • 参数是以逗号分隔的表达式列表
  • 参数按照从左到右的顺序求值

参数类型

序号 类型 描述
1 值参数 默认传参方式
2 引用参数 改变原始调用参数值
3 默认参数 调用时允许省略的参数
4 剩余参数 调用参数数量不确定
  • 剩余参数:...
  • 1.用在函数的形式参数列表中,表示收集,将多个离散的参数打包到一个数值中处理
  • 2.用在函数的调用参数列表中,表示展开,还原将一个数组展开成一个个离散的值
  1. function demo6(...$arr) : int
  2. {
  3. // return $arr;
  4. return array_sum($arr);
  5. // return array_product($arr);
  6. }
  7. // print_r(demo6(2,5,8,9,48));
  8. // ...
  9. // 1.用在函数的形式参数列表中,表示收集,将多个离散的参数打包到一个数值中处理
  10. // 2.用在函数的调用参数列表中,表示展开,还原将一个数组展开成一个个离散的值
  11. $args = [1,2,3,4,5,6,9,12];
  12. print_r(demo6(...$args));

5. 回调函数

语法 类型 执行方式 应用场景
匿名函数 闭包Closure 异步 函数参数

异步执行,是指当前函数的执行并不会中断当前程序的执行流程


6. 命名空间

  • 使用目录来整理文档, 允许将同名文档,存储在不同的目录下面即可
  • 不同目录下的同名文件,访问时必须带上的它的目录名称,以未区别
  • 命名空间采用类似的思想,同名函数,只要声明在不同空间中即可
  • 同样, 访问这些函数时, 也需要带上它的命名空间才可以

个人总结

  • 通过对函数细致的学习,让我对函数的了解更加的细致,刚开始的时候我觉得自己对于函数这一块就只知道一个基本的语法,其他的感觉知道的特别少,经过老师细致的教学,让我也知道了一些其他并且很难得知识,比如类型中的闭包函数、返回值中得JSON返回、函数参数中得圣剩余参数,都让我觉得刚开始接触很难得听懂,要多理解,闭包的知识我现在就是简单的理解为将函数放到一个变量中,这样函数就相当于封闭起来,简单的理解为闭包。函数中的剩余参数我觉得尤为重要,但更重要的是理解...这个参数归纳的代码,这个收集数组和分离数组都是非常重要的,对于以后数组特别多的时候,处理起来也是简单且快捷。
声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议