首页
关于
注册说明
留言板
Search
1
1Panel安装php swoole 扩展教程,以日主题ritheme为例
39 阅读
2
独角数卡宝塔搭建保姆式教程
34 阅读
3
微信/QQ防红PHP网站跳转浏览器方法源码
16 阅读
4
虚拟机安装Typecho后配置伪静态不知道是Apache还是Nginx、IIS怎么办?
12 阅读
5
网站手机能访问电脑不能访问的解决办法?
11 阅读
PHP学习
WEB前端
编程书籍
网站/服务器
源码测试
登录
/
注册
Search
标签搜索
PHP
WordPress
网站搬家
宝塔面板
Typecho
php基础知识
php基础
服务器
内网穿透
伪静态
数据库
变量
var_dump
print_r
独角数卡
宝塔
1panel
网卡设置
WP主题
网站加密
泡饼
累计撰写
53
篇文章
累计收到
3
条评论
首页
栏目
PHP学习
WEB前端
编程书籍
网站/服务器
源码测试
页面
关于
注册说明
留言板
搜索到
1
篇与
的结果
2023-04-25
php中函数的基础知识
php中函数的基础知识,包括函数的声明、调用、参数、参数不足以及参数过多的情况,还有函数返回值(一个值或多个值)的讲解。关键词:函数、function、参数、匿名函数、函数表达式、php中的模板、array_reduce、print_r新建demo.php文件源文件,代码如下:<?php // 函数 // 1. 函数的声明,可以限定参数与返回值的类型 function getUsername(string $username): string { return 'Hello, ' . $username; } // 2. 函数调用 echo getUsername('孙悟空') . '<br>'; // 3. 参数不足: 默认值 function getTotal(float $price, int $num = 1): float { return $price * $num; } echo '总金额: ' . getTotal(68.5) . ' 元 <br>'; echo '总金额: ' . getTotal(68.5, 5) . ' 元 <br>'; // 在php中的模板,有二个限制 // 1. 必须用双引号声明 // 2. 只解析变量 echo "总金额: getTotal(68.5, 5) 元 <br>"; // 声明一个匿名函数/函数表达式 $getTotal = function (float $price, int $num = 1): float { return $price * $num; }; // echo "总金额: $getTotal(68.5, 5) 元 <br>"; // 应该告诉模板,这是一个变量,要一个界定标准,边界 echo "总金额: {$getTotal(68.5, 10)} 元 <br>"; $total = $getTotal(68.5, 10); echo "总金额: {$total} 元 <br>"; // echo "总金额: ${total} 元 <br>"; // 4. 函数参数过多 $sum = function (float $a, float $b, float $c): float { return $a + $b + $c; }; echo $sum(3, 4, 5), '<br>'; echo $sum(3, 4, 5, 6, 7), '<br>'; $sum = function (...$args) { // print_r($args); return array_reduce($args, function ($acc, $cur) { return $acc + $cur; }, 0); }; echo $sum(3, 4, 5, 6, 7); // 5. 返回值 // return : 默认返回单值 // 返回多值: 数组/对象 $arr = [33, 2, 54, 7, 12, 23, 9]; function getItems(array $arr, $value): array { // 在php回调方法中,使用外部变量,用use进行声明 return array_filter($arr, function ($item) use ($value) { return $item > $value; }); } print_r(getItems($arr, 20)); 运行结果Hello, 孙悟空总金额: 68.5 元总金额: 342.5 元总金额: getTotal(68.5, 5) 元总金额: 685 元总金额: 685 元121225Array ( [0] => 33 [2] => 54 [5] => 23 )代码逻辑解析与总结 1、函数的声明非常简单function getUsername(string $username): string { return 'Hello, ' . $username; } /* 关键字 函数名(参数类型 变量名称):返回的数据类型 { 函数体.... }*/2、在函数下面直接使用 函数名(参数) 即可调用; 3、函数在参数不足的情况下会报错 too few ,处理办法是给函数的参数添加默认值; 4、php中的模板需要用 {} 括号括起来才会识别到变量; 5、php中的匿名函数可以赋值给一个变量,然后通过结合模板的特性给这个变量传参来实现php中匿名函数传参,代码如下;// 声明一个匿名函数/函数表达式 $getTotal = function (float $price, int $num = 1): float { return $price * $num; }; // 应该告诉模板,这是一个变量,要一个界定符或边界 echo "总金额: {$getTotal(68.5, 10)} 元 <br>";6、函数参数过多会自动过滤掉多余的传过来的参数;7、函数过多可以使用...$args结合array_reduce()内置函数来处理,代码如下;$sum = function (...$args) { // print_r($args); return array_reduce($args, function ($acc, $cur) { return $acc + $cur; }, 0); }; echo $sum(3, 4, 5, 6, 7);传一个数组到array_reduce()求出这组数组的总和,暂时一知半解,仅供参考。8、函数可以返回单个值、对象/多个值;9、在php方法中,使用外部变量,用use进行声明;总结变量不用声明,直接用使用双号号声明字符串模板中可嵌入变量函数先声明,再调用函数参数不足: 默认值函数参数过多: 剩余参数...rest函数默认单值返回,返回多值请用数组或对象
2023年04月25日
2 阅读
0 评论
0 点赞