博客列表 >PHP基础知识——函数

PHP基础知识——函数

phpcn_u202398
phpcn_u202398原创
2020年04月21日 16:21:43508浏览

1、函数语法

  1. function 函数名(类型: 参数列表) {
  2. 被执行的代码;
  3. }

代码实例

  1. <?php
  2. function sum($a,$b){
  3. $a+$b;
  4. }
  5. ?>

3、函数的类型

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

代码实例

  1. <?php
  2. // 1. 自定义函数
  3. function sum($a,$b){//自定义函数名为sum
  4. return $a+$b;//返回$a+$b
  5. }
  6. echo sum(2,5);//调用函数sum
  7. echo"<br><hr>";
  8. // 2. 系统函数
  9. $a=[1,2,3,4,5,6,7,54];
  10. echo max($a);//取数组中的最大值
  11. echo"<hr>";
  12. var_dump($a);//打印出变量的相关信息
  13. echo"<hr>";
  14. echo rand(1,9);//获取随机数
  15. echo"<hr>";
  16. // 3. 可变函数
  17. $funName = 'sum';//函数名赋值给变量
  18. echo $funName(4,6);
  19. echo"<hr>";
  20. // 4. 匿名函数:
  21. $d = function ($a , $b){
  22. return $a * $b;
  23. };
  24. echo $d(21,3);
  25. ?>

3、函数返回值

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

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

代码实例

  1. <?php
  2. //1. 字符串拼装
  3. function st(){
  4. $name = "小明";
  5. $hob = "喜欢打篮球";
  6. return $name.$hob;
  7. }
  8. echo st();
  9. echo"<br>";
  10. // 2. 数组
  11. function arr(){
  12. $user = [
  13. 'name'=>'李明',
  14. 'age' => '23',
  15. 'sex' => '男'
  16. ];
  17. return $user;
  18. }
  19. var_dump(arr());
  20. $ab = print_r(arr(),true);
  21. printf('<pre>%s</pre>',$ab);
  22. // 3. JSON字符串
  23. function js()
  24. {
  25. // json_encode(): 将php数据编码为json格式的字符串返回
  26. return json_encode(['name'=>'李明','age' => '23','sex' => '男']);
  27. }
  28. echo js();
  29. echo"<hr>";
  30. $user = json_decode(js(), true);
  31. print_r($user);
  32. // 4. 序列化: 字符串
  33. echo"<br><hr>";
  34. function js1()
  35. {
  36. // json_encode(): 将php数据编码为json格式的字符串返回
  37. return serialize(['name'=>'李明','age' => '23','sex' => '男']);
  38. }
  39. echo js1();
  40. echo"<hr>";
  41. $user = unserialize(js1());
  42. print_r($user);
  43. ?>

4、函数参数

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

参数类型

序号 类型 描述
1 值参数 默认传参方式
2 引用参数 改变原始调用参数值
3 默认参数 调用时允许省略的参数
4 剩余参数 调用参数数量不确定

代码实例

  1. <?php
  2. //1. 值参数
  3. function lj( $a)
  4. {
  5. return $a += 5;
  6. }
  7. $b = 34;
  8. echo lj($b) , '<br>';
  9. echo $b;
  10. echo '<hr>';
  11. // 2. 引用参数
  12. function lj1( &$a)
  13. {
  14. return $a += 5;
  15. }
  16. $b = 34;
  17. echo lj1($b) , '<br>';
  18. echo $b;
  19. echo '<hr>';
  20. // 3. 默认参数
  21. function lj2( $a ,$b)
  22. {
  23. return $a + $b;
  24. }
  25. echo lj2(5,34) , '<br>';
  26. echo '<hr>';
  27. // 4. 剩余参数
  28. function lj3(...$a )
  29. {
  30. return array_sum($a);
  31. }
  32. $arr = [1,2,3,6];
  33. print_r(lj3(...$arr));
  34. echo '<hr>';
  35. ?>

学习总结

本节课我们学习了PHP基础知识——函数,通过本节课的学习,复习巩固了旧知识,同时也学到了新的一些知识,在返回值中学到了返回分为显式(return)和隐式(没有return),在函数参数中学到了新知识引用参数和剩余参数,通过学习发现自己的不足,加强学习。

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议