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 相关文章推荐
不用iconv库的gb2312与utf-8的互换函数
Oct 09 PHP
推荐一篇入门级的Class文章
Mar 19 PHP
PHP XML error parsing SOAP payload on line 1
Jun 17 PHP
比较简单实用的PHP无限分类源码分享(思路不错)
Oct 13 PHP
PHP的异常处理类Exception的使用及说明
Jun 13 PHP
php中require和require_once的区别说明
Feb 27 PHP
PHP加Nginx实现动态裁剪图片方案
Mar 10 PHP
php校验表单检测字段是否为空的方法
Mar 20 PHP
Discuz!X中SESSION机制实例详解
Sep 23 PHP
laravel 5.3中自定义加密服务的方案详解
May 09 PHP
PHP删除数组中指定下标的元素方法
Feb 03 PHP
PHP自定义递归函数实现数组转JSON功能【支持GBK编码】
Jul 17 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 access 数据连接与读取保存编辑数据的实现代码
2010/05/12 PHP
PHP制作万年历
2015/01/07 PHP
PHP图像识别技术原理与实现
2016/10/27 PHP
Laravel实现短信注册的示例代码
2018/05/29 PHP
php简单计算权重的方法示例【适合抽奖类应用】
2019/06/10 PHP
jQuery checkbox全选/取消全选实现代码
2009/11/14 Javascript
仿谷歌主页js动画效果实现代码
2013/07/14 Javascript
JS实现的竖向折叠菜单代码
2015/10/21 Javascript
jquery遍历函数siblings()用法实例
2015/12/24 Javascript
js组件SlotMachine实现图片切换效果制作抽奖系统
2016/04/17 Javascript
textarea 在浏览器中固定大小和禁止拖动的实现方法
2016/12/03 Javascript
js遮罩效果制作弹出注册界面效果
2017/01/25 Javascript
jquery仿京东商品放大浏览页面
2017/06/06 jQuery
JavaScript监听手机物理返回键的两种解决方法
2017/08/14 Javascript
AngularJS2 与 D3.js集成实现自定义可视化的方法
2017/12/01 Javascript
浅谈vue单一组件下动态修改数据时的全部重渲染
2018/03/01 Javascript
JavaScript中的ES6 Proxy的具体使用
2019/06/16 Javascript
微信小程序 弹窗输入组件的实现解析
2019/08/12 Javascript
js实现的在本地预览图片功能示例
2019/11/09 Javascript
JS正则表达式验证端口范围(0-65535)
2020/01/06 Javascript
[00:23]DOTA2群星共贺开放测试 25日无码时代来袭
2013/09/23 DOTA
Linux下Python安装完成后使用pip命令的详细教程
2018/11/22 Python
Python列表(List)知识点总结
2019/02/18 Python
python selenium firefox使用详解
2019/02/26 Python
django的autoreload机制实现
2020/06/03 Python
浅谈keras中自定义二分类任务评价指标metrics的方法以及代码
2020/06/11 Python
美国糖果店:Sugarfina
2019/02/21 全球购物
应届毕业生求职信范例分享
2013/12/17 职场文书
2014国培学习感言
2014/03/05 职场文书
捐书倡议书
2014/08/29 职场文书
2014大学生党员评议个人总结
2014/09/22 职场文书
学校勤俭节约倡议书
2015/04/29 职场文书
2015年行政管理人员工作总结
2015/10/15 职场文书
2016年庆“七一”主题党日活动总结
2016/04/05 职场文书
企业管理不到位检讨书
2019/06/27 职场文书
Python 发送SMTP邮件的简单教程
2021/06/24 Python