加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP中的闭包(匿名函数)浅析

发布时间:2020-12-13 02:23:53 所属栏目:PHP教程 来源:网络整理
导读:《PHP中的闭包(匿名函数)浅析》要点: 本文介绍了PHP中的闭包(匿名函数)浅析,希望对您有用。如果有疑问,可以联系我们。 PHP教程 闭包也叫匿名函数 PHP5.3 引入. PHP教程 使用办法 PHP教程 必要调整数组元素中的值 代码如下: $data = range(0,100);//想

《PHP中的闭包(匿名函数)浅析》要点:
本文介绍了PHP中的闭包(匿名函数)浅析,希望对您有用。如果有疑问,可以联系我们。

PHP教程闭包也叫匿名函数 PHP5.3 引入.

PHP教程使用办法

PHP教程必要调整数组元素中的值

代码如下:

$data = range(0,100);//想要每个元素的值都加上.html的后缀
$suffix = '.html';

PHP教程function makeSuffix($str,$suffix)
{
??? return $str . $suffix;
}

PHP教程$new_data = array_map(function($item) use ($suffix) {
??? return makeSuffix($item,$suffix);
},$data);

PHP教程必要改变元素的结构

代码如下:

$arr = [
??? [
??????? 'id'=>'',
??????? 'name'=>'',
??????? 'create_time'=>'',
??? ],
];

PHP教程$new_data = array_map(function($item) {
??? return ['id'=>$item['id'],'name'=>$item['name']];
},$arr);
//如果是用foreach还必要在循环里面建立零时变量,把必要的值赋给这个变量

PHP教程执行效率

代码如下:

$data = range(0,50000)
//1
foreach ($data as &$value) {
??? $value = makeSuffix($value,$suffix);
}

PHP教程//2
foreach ($data as $value) {
??? $new[] = makeSuffix($value,$suffix);
}

PHP教程//3
array_map(function($item) use ($suffix) {
??? return makeSuffix($item,$data);


经过5W次执行之后,从结果看1-3,大部分情况执行时间依次升高,其中一次执行结果时间如下
代码如下:

1:0.0260009765625
2:0.038002014160156
3:0.047003030776978

PHP教程结论

PHP教程闭包的代码相对优雅,但是逻辑比拟容易混淆,相比其他方式执行效率相对较低,要慎用.建议在代码结构比拟乱,需要封装的时候使用.

PHP教程希望此文能帮到未曾使用或者对 PHP 的闭包有疑问的同学,同时如果有纰谬的地方欢迎支出.

欢迎参与《PHP中的闭包(匿名函数)浅析》讨论,分享您的想法,编程之家 52php.cn为您提供专业教程。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读