PHP匿名函数和use子句用法实例


Posted in PHP onMarch 16, 2016

本文实例讲述了PHP匿名函数和use子句用法。分享给大家供大家参考,具体如下:

下面方法输出的是hello world

$param1和$param2是闭包变量

function test()
{
  $param2 = 'every';
  // 返回一个匿名函数
  return function ($param1) use ($param2) {
    // use子句 让匿名函数使用其作用域的变量
    $param2 .= 'one';
    print $param1 . ' ' . $param2;
  };
}
$anonymous_func = test();
$anonymous_func('hello');

下面的方式 输出hello everyone

function test()
{
  $param2 = 'everyone';
  $func = function ($param1) use ($param2) {
    // use子句 让匿名函数使用其父作用域的变量
    print $param1 . ' ' . $param2;
  };
  $param2 = 'everybody';
  return $func;
}
$anonymous_func = test();
$anonymous_func('hello');

下面的方式 输出hello everybody

$param2中多了一个引用

function test()
{
  $param2 = 'everyone';
  $func = function ($param1) use (&$param2) {
    // use子句 让匿名函数使用其父作用域的变量
    print $param1 . ' ' . $param2;
  };
  $param2 = 'everybody';
  return $func;
}
$anonymous_func = test();
$anonymous_func('hello');

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
php 中文字符入库或显示乱码问题的解决方法
Apr 12 PHP
解析php php_openssl.dll的作用
Jul 01 PHP
解析php mysql 事务处理回滚操作(附实例)
Aug 05 PHP
php发送post请求的三种方法
Feb 11 PHP
php生成百度sitemap站点地图类函数实例
Oct 17 PHP
解决ThinkPHP关闭调试模式时报错的问题汇总
Apr 22 PHP
php实现将上传word文件转为html的方法
Jun 03 PHP
Yii快速入门经典教程
Dec 28 PHP
php版微信公众号接口实现发红包的方法
Oct 14 PHP
php在windows环境下获得cpu内存实时使用率(推荐)
Feb 08 PHP
PHP模糊查询技术实例分析【附源码下载】
Mar 07 PHP
PHP实现抽奖功能实例代码
Jun 30 PHP
PHP Static延迟静态绑定用法分析
Mar 16 #PHP
PHP5.5迭代生成器用法实例详解
Mar 16 #PHP
Laravel执行migrate命令提示:No such file or directory的解决方法
Mar 16 #PHP
PHP 中提示undefined index如何解决(多种方法)
Mar 16 #PHP
Laravel中Trait的用法实例详解
Mar 16 #PHP
Laravel中注册Facades的步骤详解
Mar 16 #PHP
PHP与Ajax相结合实现登录验证小Demo
Mar 16 #PHP
You might like
PHP用户指南-cookies部分
2006/10/09 PHP
PHP strtr() 函数使用说明
2008/11/21 PHP
PHP 基于文件头的文件类型验证类函数
2012/05/01 PHP
[原创]php正则删除img标签的方法示例
2017/05/27 PHP
Yii redis集合的基本使用教程
2020/06/14 PHP
Convert Seconds To Hours
2007/06/16 Javascript
jquery load事件(callback/data)使用方法及注意事项
2013/02/06 Javascript
jquery重新播放css动画所遇问题解决
2013/08/21 Javascript
Jquery创建层显示标题和内容且随鼠标移动而移动
2014/01/26 Javascript
禁用JavaScript控制台调试的方法
2014/03/07 Javascript
通过Jquery的Ajax方法读取将table转换为Json
2014/05/31 Javascript
jquery插件Jplayer使用方法简析
2016/04/22 Javascript
Bootstrap布局组件教程之Bootstrap下拉菜单
2016/06/12 Javascript
vue.js通过自定义指令实现数据拉取更新的实现方法
2016/10/18 Javascript
javascript表单正则应用
2017/02/04 Javascript
浅谈js for循环输出i为同一值的问题
2017/03/01 Javascript
vue + typescript + 极验登录验证的实现方法
2019/06/27 Javascript
[50:15]VP vs Mineski 2018国际邀请赛淘汰赛BO3 第二场 8.22
2018/08/23 DOTA
Python运行的17个时新手常见错误小结
2012/08/07 Python
python中实现指定时间调用函数示例代码
2017/09/08 Python
在cmder下安装ipython以及环境的搭建
2018/10/19 Python
python数据预处理方式 :数据降维
2020/02/24 Python
python利用opencv实现颜色检测
2021/02/23 Python
Html5实现单张、多张图片上传功能
2019/04/28 HTML / CSS
美国折扣网站:jClub
2017/08/07 全球购物
美国单身专业人士在线约会网站:EliteSingles
2019/03/19 全球购物
美国林业供应商:Forestry Suppliers
2019/05/01 全球购物
医学院毕业生自荐信
2013/11/08 职场文书
普通简短的个人自我评价
2014/02/15 职场文书
关于雷锋的演讲稿
2014/05/10 职场文书
优秀班主任申报材料
2014/12/16 职场文书
预备党员介绍人意见
2015/06/01 职场文书
2015年语言文字工作总结
2015/07/23 职场文书
《7的乘法口诀》教学反思
2016/02/18 职场文书
2019年教师节祝福语精选,给老师送上真诚的祝福
2019/09/09 职场文书
只用50行Python代码爬取网络美女高清图片
2021/06/02 Python