Blogger Information
Blog 8
fans 0
comment 1
visits 11414
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
函数的四种类型,以及四种返回值个人理解演示总结
混混
Original
5893 people have browsed it

1.函数的作用

函数是实现代码复用的重要方法,可直接在需要的地方直接调用。

2.函数类型

函数有4种类型:自定义函数,系统函数,可变函数,匿名函数。


  1. 自定义函数:function del(){…}|自己定义一个del()函数
    演示:

    <?php
    function del($a,$b)
    {

    1. return $a*$b;

    }

    echo del(10,20);

输出结果:
```


  1. 系统函数:printf(),count()|系统预定义的函数,不同function声明,直接调用就可以使用
    演示:

    <?php
    function del($a,$b)
    {

    1. return $a*$b;

    }

    printf(del(10,20));//printf()是系统预定义的函数,可以直接打印输出函数内内容//
    输出结果:


  1. 可变函数:$getName…|函数用变量来表示
    演示:````php
  1. <?php
  2. function del(float $a, float $b):float
  3. {
  4. return $a/$b;
  5. }
  6. $del = 'del';
  7. echo '湖人队的胜率是'.$del(62,82);

输出结果:


匿名函数:$money=function (){….}|其实就是闭包函数,主要是用于回调处理

演示:根据赛前预测的概率,判断出湖人队的胜率,来计算出本赛季夺冠的概率

  1. <?php
  2. $key=function ($res){
  3. return function (float $a,float $b)use($res)
  4. {
  5. $k=($a/$b)*$res;
  6. return '湖人队的夺冠率是'.$k;
  7. };
  8. };
  9. echo $key(0.9)(62,82);

重点.use关键字可以引用函数外部的变量或者外部的形参。

个人理解:,如果父作用域是一个函数,子函数要先return,不然会报错。

3.函数的返回值

原则上函数的返回是单值,由于其他的需要,往往需要多值。

  1. 字符串的拼装
    演示:显示用户的状态
  1. <?php
  2. function dome():string
  3. {
  4. $status=0;
  5. $res='退出';
  6. return '用户的状态是' .$status .':'. $res;
  7. }
  8. echo dome();

输出结果:


  1. 数组的方式
    演示:判断$status来判断付款的状态
  1. <?php
  2. function demo2() : array
  3. {
  4. return ['status'=>1, 'message'=>'成功'];
  5. }
  6. $res=print_r(demo2(),true);
  7. printf('<pre>%s</pre>',$res);
  8. echo demo2()['status']==1?'用户付款'.demo2()['message']:'失败';

输出结果:


  1. JSON格式返回
    个人难点(json只知道是一种格式,没有大规模的接触前段,只是看朱老师的视频跟着ajax用过几次)

演示:判断$status来判断付款的状态

  1. <?php
  2. function demo3() : string
  3. {
  4. return json_encode(['status'=>1,'message'=>'成功']);
  5. }
  6. $data= demo3();
  7. $var=json_decode($data,true);
  8. if($var['status']){
  9. echo '用户付款'.$var['message'];
  10. }else{
  11. echo '用户付款失败';
  12. }

输出结果:

注意点:json_encode()函数对变量进行 utf—8 编码|json_decode()函数将json数据还原


  1. 序列化返回多个数值,json其实也是序列化的一种形式

演示:判断$status来判断付款的状态

  1. <?php
  2. function demo4() : string
  3. {
  4. return serialize(['status'=>1,'message'=>'成功']);
  5. }
  6. echo demo4();
  7. echo '<hr>';
  8. $data=unserialize(demo4());
  9. if($data['status']==1){
  10. echo '用户付款'.$data['message'];
  11. }else{
  12. echo '用户付款失败!';
  13. }

输出结果:

注意点:serialize()函数用来序列化一个数组,unserialize()用来反序列对象

Correcting teacher:天蓬老师天蓬老师

Correction status:qualified

Teacher's comments:你用得是在线编辑器吗? 建议用本地的, 后面的教学对版本是有要求的
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
1 comments
混混 2020-04-23 14:15:58
好的,时间有点仓促,还没有配置编译器,周末给他配好
1 floor
Author's latest blog post