博主信息
博文 3
粉丝 0
评论 0
访问量 2000
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
函数语法、参数收集
我想买个好耳机
原创
674人浏览过

<?php

//函数语法

function func1(int $a,int $b):float

{

   return $a+$b;//显示返值

}

echo func1(1.5,1.2);

echo '<hr>';


//命名函数   定义一个有参有返函数

function bianLiang1(float $a,float $b):float{

    return $a*$b;

}

echo bianLiang1(100,0.88);//调用函数,并传参

echo '<hr>';


//系统函数   系统自带函数  不用定义,拿来就能用

$str='哈尔滨防控漏洞为全国敲响新的闹钟';

$ss=mb_substr($str,0,5);//截取str字符串,从下标0开始,到5结束

//mb_是转换编码格式,把ASCLL转换为utf8(系统默认为ASCLL,utf8为中文编码)

echo $ss.'<br>';


//可变函数  把函数赋值给变量,可通过变量来调用函数

$fucnName='func1';

echo $fucnName(80,0.9).'<br>';


//匿名函数   没有名字的函数

//变量保存的函数,实质上是保存的一个对象


$bianLiang2=function ($a,$b){

    echo $a.'hello world'.$b;

};

$bianLiang2(1,2);


//闭包

//函数内部有一些局部变量(要执行的代码块)在函数结束后没有被释放

function display(){

    $name=__FUNCTION__;

    $neibufunction=function () use ($name) {

        echo $name;//内部匿名函数调用父级元素,使用use

    };


    $neibufunction();//调用函数

}

display();


//返回值

//单值返回

function demo1():string{


    return '11';

}


//多值返回

//1字符串拼接

function demo2():string{

    $a=1;

    $b=2;

    return $a.'+'.$b;

}


//2数组  将多个元素以键值对的方式打印出来

function demo3():array{


    return ['sex'=>'男','age'=>18];

}

$r=print_r(demo3(),true);

printf('%s',$r);


// 3. 通过JSON返回

function demo4():string{

    return json_encode(['sex'=>'女','age'=>20]);

    //将元素以键值对的方式存储在json

}

echo demo4();

//--------------------------------------------

$var=json_decode(demo4(),true);//从json中取出数据

print_r($var);

//--------------------------------------------

//4。序列化

function demo5():string{

    return serialize(['number'=>12123,'class'=>11]);

}

echo demo5();

//反序列化

$unvar=unserialize(demo5());//返回类型是序列化之前的类型

printf('%s',print_r($unvar,true));//格式化输出数据

echo '<hr>';


//函数参数

//1值参数

function demo6(int $arg):int{


    return $arg*2;

}

$vv=100;

echo demo6($vv);//返回的只是计算结果,不会改变变量的值

echo '<hr>';


//引用参数

function demo7(int &$arg):int{//在参数前使用取地址符&,就会改变原始调用参数的值

    return $arg*2;

}

$vv=100;

echo demo7($vv);

echo '<hr>';

echo $vv;


//默认参数,它必须写在必选参数的后面

function demo8($a,$b=1){

    return $a+$b;

}

echo '默认参数';

echo demo8(2);


//收集参数

function demo9(...$item){

    $to=0;

    foreach($item as $value){

        $to+=$value;

    }

    return $to;

}

echo '收集参数';

echo demo9(1,2,3,4,5);


数组解析

$user[] = [100, 'admin', 90];

$user[] = [110, 'peter', 60];

foreach ($user as list($id, $name)) {

    //解析数组,分开输出打印

    printf('id=%s, name=%s<br>', $id, $name);

    //格式化输出

 }


批改老师:天蓬老师天蓬老师

批改状态:合格

老师批语:注释加个框什么意思, 为什么不使用markdown语法来写, 非常简单的
本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
作者最新博文
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学