函数的参数与返回值,匿名函数,回调函数
程序员文章站
2022-03-01 18:36:15
...
参数
参数:可选的,对外提供一个接口,供函数调用者按照自己的意愿改变函数体内的执行行为
参数 形参 实参
默认参数:有默认值的参数,如果不传参或者少传参,就会默认参数的值
参数是从左往右求值,所以默认参数在最右边
按值传递参数 不会改变全局变量的值 导入到函数中的只是$roomprice的副本
function totalneedtopay1($days, $roomprice, $discount = 0.88)
{
$roomprice *= $discount;
$total = $days * $roomprice;
return "您需要支付的总价为{$total}元。";
}
$days = 5;
$roomprice = 1500;
$discount = 0.7;
echo totalneedtopay1($days, $roomprice, $discount);
按变量引用传值 会改变父作用域里变量的值 变量内容所处的内存地址会被导入的函数中
function totalneedtopay2($days, &$roomprice, $discount = 0.88)
{
$roomprice *= $discount;
$total = $days * $roomprice;
return "您需要支付的总价为{$total}元。";
}
$days = 5;
$roomprice = 1500;
$discount = 0.7;
echo totalneedtopay2($days, $roomprice, $discount);
echo $roomprice;
返回值
return 返回值
- 1函数只能返回单一的值,返回值的类型可以是任意类型
- 2函数碰到return语句,立即结束程序执行,return后面代码不会被执行
function demo()
{
return md5('123456');
return 1 === '1';
return 1 == '1';
return array('123', '西门子');
return 12.23;
echo '你好';
return 1;
}
$res = demo();
var_dump($res);
匿名函数
匿名函数 通常被当做回调函数参数来使用$closure = function ($name) {
return "{$name},欢迎您下榻喜来登酒店。";
};
echo $closure('李女士');
回调函数
回调函数:php回调是指在主线程函数执行的过程中,突然跳去执行设置的回调函数,回调函数执行结束后, 再回到主线程处理接下来的流程$odd = function (array $arr) {
for ($i = 0; $i < count($arr); $i++) {
if ($arr[$i] % 2 == 0) {
$newArr[] = $arr[$i];
}
}
return $newArr;
};
$arr = [24, 36, 55, 87, 96, 24, 65, 66];
var_dump($odd($arr));
function sum(closure $func, $arr)
{
return array_sum($func($arr));
}
echo sum($odd, $arr);
上一篇: 函数类型和数据类型
下一篇: chrome浏览器进行js调试
推荐阅读
-
PHP回调函数概念与用法实例分析
-
Node之为什么回调函数第一个参数是err
-
上传图片回调出错,同一个回调函数,只是换了不同的域名,线上服务器可以,测试服务器报错,返回 579 错误怎么回事?
-
Keras的回调函数ReduceLROnPlateau优化学习率
-
ajax回调函数返回值 处理时eval的有关问题 苦恼人
-
Web笔记-layerui的基本使用及JavaScript回调函数的写法
-
JS脚本加载后执行相应回调函数的操作方法
-
More Effective C++----(12)理解"抛出一个异常"与"传递一个参数"或"调用一个虚函数"间的差异
-
详解关于微信setData回调函数中的坑
-
vue2.0$nextTick监听数据渲染完成之后的回调函数方法