php 函数应用总结,php函数基础总结

函数在任何编程语言中都是不可或缺的一类,PHP 的真正威力源自于它的函数,在 PHP 中,提供了超过 1000 个内建的函数。

本文对php函数的基础知识进行总结,文章包含内容如下:

1.自定义函数

2.函数的返回值

3.形参与实参

4.剩余参数

5.引用参数

6.匿名函数

7.函数的命名空间

一、自定义函数

//函数:完成特定功能的代码块

function函数名称的标识符([参数列表(可选)]){

函数体

return返回值(可选)

}

//函数是代码块的复用手段

//自定义函数

functionsum($a,$b){

return$a+$b;

}

sum(1,2);

二、函数的返回值

函数没有返回值,返回null

函数只能返回单一的值,返回值的数据类型可以是任意类型

函数遇到return语句,立即结束程序执行,return后的代码不会被执行

函数返回多个值例子:

// 通过字符串的拼接

functionadmin(){

$status=1;

$message='修改成功';

return'code'.$status.','.$message.'';

}

echo admin();//code1,修改成功

// 通过数组

functionadmin1(){

$status=1;

$message='修改成功';

return['status'=>$status,'msg'=>$message];

}

print_r(admin1());//Array ( [status] => 1 [msg] => 修改成功 )

//json

functionadmin2(){

$status=1;

$message='修改成功';

returnjson_encode(['status'=>$status,'masg'=>$message]);

}

echo admin2();//{"status":1,"masg":"\u4fee\u6539\u6210\u529f"}

$data=json_decode(admin2(),true);

print_r($data);//Array ( [status] => 1 [masg] => 修改成功 )

// 序列化 serialize

functionadmin3(){

$status=1;

$message='修改成功';

returnserialize(['status'=>$status,'msg'=>$message]);

}

echo admin3();//a:2:{s:6:"status";i:1;s:3:"msg";s:12:"修改成功";}

// 反序列化

print_r(unserialize(admin3())['msg']);//修改成功

三、形参与实参

形式参数

形式参数就是定义函数时函数名后面括号内的参数列表(简称“形参”),就像它的名字一样,形参本身没有具体的值。因为函数体中需要使用外部传入的参数,为了使参数可以正确地传递进来,就需要通过形式参数与函数体里面的数据进行传递,形式参数如下图所示。

224040aec83c8cf5fae67160710e8d9a.png

实际参数

实际参数就是我们在调用函数时函数名后面括号中的若干个参数(简称“实参”),实参和形参需要按顺序一一对应,它会替换形式参数在函数体中对应的变量值,函数的参数可以是一个具体的值,也可以是一个变量,实际参数如下图所示。

a2f3553047699bfd63025963bf8b3898.png

注意:实际参数一定要和形式参数的个数相相同,并且一一对应,不然程序会出错。

四、剩余参数

剩余参数用在参数列表中 收集归纳作用

//function test($a,$b,$c){

// return $a+$b+$c;

//}

//echo test(5,6,7);//18

// 调用参数的数量不固定

//echo test(3,1,4,4,1213);

// 剩余参数用在参数列表中 收集归纳作用

//array_sum() 返回数组中所有值的和

functiontest(...$args){

returnarray_sum($args);

}

echo test(3,1,4,4,1213);//1225

//print_r(test(3,1,4,4,1213));

$arr=[3,1,4,4,1213];

$res=test(...$arr);

echo $res;

五、引用参数

php的引用参数(就是在变量或者函数、对象等前面加上&符号)

functionref(&$arg){

return$arg+=20;

}

$val=20;

echoref($val);//40

echo $val;//40 把$val的内存储存区块相对地址,导入到函数中,在函数里发生的任何变化都会对父程序造成影响

六、匿名函数/回调函数

回调函数,用于异步编程中函数的参数,异步编程->对函数执行的时间和顺序不可预测,通过事件/回调的方式来唤醒主程序。

官方介绍:匿名函数(Anonymous functions),也叫闭包函数(closures),允许 临时创建一个没有指定名称的函数。最经常用作回调函数 callable参数的值。当然,也有其它应用的情况。

$data=range(1,100);

print_r($data);

echo"


";

$a=array_map(function($item){// $item 临时变量,总是变化的

if($item%2==0)return$item;

},$data);

print_r($a);

echo"


";

$b=array_filter($a,function($item){

return$item;

});

print_r(array_values($b));

1.array_map定义和用法

array_map() 函数将用户自定义函数作用到数组中的每个值上,并返回用户自定义函数作用后的带有新值的数组。

回调函数接受的参数数目应该和传递给 array_map() 函数的数组数目一致。

提示:您可以向函数输入一个或者多个数组。

2.array_filter 用回调函数过滤数组中的单元

3.array_values()

定义和用法

array_values() 函数返回一个包含给定数组中所有键值的数组,但不保留键名。

提示:被返回的数组将使用数值键,从 0 开始并以 1 递增。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值