PHP闭包函数传参及使用外部变量的方法


Posted in PHP onMarch 15, 2016

本文实例讲述了PHP闭包函数传参及使用外部变量的方法。分享给大家供大家参考,具体如下:

在Laravel控制器写两个方法,一个是在内部创建一个闭包函数,一个是执行传过来的闭包函数,测试闭包的写法,use使用外部变量,及闭包函数的传参。如下:

//测试闭包传参及use使用外部变量
public function testClosure($t1, $t2)
{
  $closure = function ($param1, $param2) use ($t1, $t2) {
    echo $param1.$param2.$t1.$t2;
  };
  $this->execClosure('test.closure', $closure);
}
//执行闭包函数
protected function execClosure($name, Closure $closure)
{
  echo 'Closure func name:'.$name;
  echo '<br>';
  $closure('p1', 'p2');
}

在routes.php添加路由:

Route::get('/test/closure/{t1}/{t2}',['uses'=>'TestController@testClosure']);

访问www.example.com/test/closure/hehe1/hehe2

浏览器输出结果:

Closure func name:test.closure
p1p2hehe1hehe2

转自:小谈博客 http://www.tantengvip.com/2016/03/php-closure-use/

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

PHP 相关文章推荐
基于mysql的论坛(2)
Oct 09 PHP
用PHP程序实现支持页面后退的两种方法
Jun 30 PHP
关于PHP递归算法和应用方法介绍
Apr 15 PHP
CodeIgniter采用config控制的多语言实现根据浏览器语言自动转换功能
Jul 18 PHP
Smarty中调用FCKeditor的方法
Oct 27 PHP
php生成短域名函数
Mar 23 PHP
php简单实现屏蔽指定ip段用户的访问
Apr 29 PHP
PHP CURL或file_get_contents获取网页标题的代码及两者效率的稳定性问题
Nov 30 PHP
PHP 下载文件时如何自动添加bom头及解释BOM头和去掉bom头的方法
Jan 04 PHP
使用ThinkPHP的自动完成实现无限级分类实例详解
Sep 02 PHP
php PDO异常处理详解
Nov 20 PHP
php注册审核重点解析(数据访问)
May 23 PHP
Yii rules常用规则示例
Mar 15 #PHP
基于laravel制作APP接口(API)
Mar 15 #PHP
使用Composer安装Yii框架的方法
Mar 15 #PHP
Yii使用migrate命令执行sql语句的方法
Mar 15 #PHP
YII Framework框架教程之使用YIIC快速创建YII应用详解
Mar 15 #PHP
php正则表达式验证(邮件地址、Url地址、电话号码、邮政编码)
Mar 14 #PHP
详解PHP实现异步调用的4种方法
Mar 14 #PHP
You might like
Bo-Blog专用的给Windows服务器的IIS Rewrite程序
2007/08/26 PHP
PHP的substr_replace将指定两位置之间的字符替换为*号
2011/05/04 PHP
destoon二次开发入门示例
2014/06/20 PHP
Thinkphp 框架基础之入口文件功能、定义与用法分析
2020/04/27 PHP
ie支持function.bind()方法实现代码
2012/12/27 Javascript
简单实例处理url特殊符号&amp;处理(2种方法)
2013/04/02 Javascript
jquery五角星评分插件示例分享
2014/02/21 Javascript
jQuery之Deferred对象详解
2014/09/04 Javascript
推荐5 个常用的JavaScript调试技巧
2015/01/08 Javascript
原生JavaScript实现动态省市县三级联动下拉框菜单实例代码
2016/02/03 Javascript
iOS和Android用同一个二维码实现跳转下载链接的方法
2016/09/28 Javascript
jquery+Jscex打造游戏力度条
2020/09/12 Javascript
JavaScript提高加载和执行效率的方法
2017/02/03 Javascript
JS打开摄像头并截图上传示例
2017/02/18 Javascript
JS模拟实现ECMAScript5新增的数组方法
2017/03/20 Javascript
vue里面v-bind和Props 利用props绑定动态数据的方法
2018/08/27 Javascript
JS/jQuery实现获取时间的方法及常用类完整示例
2019/03/07 jQuery
js 根据对象数组中的属性进行排序实现代码
2019/09/12 Javascript
Vue快速实现通用表单验证功能
2019/12/05 Javascript
Python中使用PIPE操作Linux管道
2015/02/04 Python
python使用post提交数据到远程url的方法
2015/04/29 Python
fastcgi文件读取漏洞之python扫描脚本
2017/04/23 Python
Python设计模式之中介模式简单示例
2018/01/09 Python
python异常处理、自定义异常、断言原理与用法分析
2020/03/23 Python
Python进行特征提取的示例代码
2020/10/15 Python
在阿联酋购买翻新手机和平板电脑:Teckzu
2021/02/12 全球购物
ShellScript面试题一则-ShellScript编程
2014/06/24 面试题
社区八一活动方案
2014/02/03 职场文书
2014中考励志标语
2014/06/05 职场文书
质检员岗位职责范本
2015/04/07 职场文书
课题研究阶段性总结
2015/08/13 职场文书
Python机器学习之逻辑回归
2021/05/11 Python
Java SSM配置文件案例详解
2021/08/30 Java/Android
室外天线与收音机天线杆接合方法
2022/04/05 无线电
MySQL如何使备份得数据保持一致
2022/05/02 MySQL
Mysql 文件配置解析介绍
2022/05/06 MySQL