• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase
您的位置:首页 > 数据库 >Mysql > php Closure类的使用方法

php Closure类的使用方法

作者:匿名 字体:[增加 减小] 来源:互联网 时间:2018-12-05

匿名通过本文主要向大家介绍了Closure,使用方法,php等相关知识,希望本文的分享对您有所帮助
Closure,匿名函数,又称为Anonymous functions,是php5.3的时候引入的。匿名函数就是没有定义名字的函数。这点牢牢记住就能理解匿名函数的定义了。

PHP Closure类之前在PHP预定义接口中介绍过,但它可不是interface哦,它是一个内部的final类。Closure类是用来表示匿名函数的,所有的匿名函数都是Closure类的实例。

$func = function() {
  echo 'func called';
};
var_dump($func); //class Closure#1 (0) { }
$reflect =new ReflectionClass('Closure');
var_dump(
  $reflect->isInterface(), //false
  $reflect->isFinal(), //true
  $reflect->isInternal() //true
);

Closure类结构如下:

Closure::construct — 用于禁止实例化的构造函数
Closure::bind — 复制一个闭包,绑定指定的$this对象和类作用域。
Closure::bindTo — 复制当前闭包对象,绑定指定的$this对象和类作用域。

看一个绑定$this对象和作用域的例子:

class Lang
{
  private $name = 'php';
}
$closure = function () {
  return $this->name;
};
$bind_closure = Closure::bind($closure, new Lang(), 'Lang');
echo $bind_closure(); //php

另外,PHP使用魔术方法invoke()可以使类变成闭包:

class Invoker {
  public function invoke() {return METHOD;}
}
$obj = new Invoker;
echo $obj(); //Invoker::invoke

以上就是php Closure类的使用方法的详细内容,更多请关注微课江湖其它相关文章!

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • php Closure类的使用方法
  • php 中的closure用法实例详解

相关文章

  • 2018-12-05sql数据库不能直接用instr函数
  • 2018-12-05MySQL 温故而知新--Innodb存储引擎中的锁
  • 2018-12-05MYSQL中utf8_general_ci和utf8_unicode_ci的区别
  • 2017-05-11MySQL延迟关联性能优化方法
  • 2018-12-05燕十八redis视频资料下载(课件、源码)
  • 2018-12-05未能在 sysdatabases 中找到数据库 aa1xxxx 所对应的条目。没有
  • 2018-12-05ORA-12514及ORA-28547错误解决方案
  • 2018-12-05将所有符合条件的结果拼接成一列并用逗号隔开的一个sql语句
  • 2018-12-05mysql_insert_id()函数的文章推荐10篇
  • 2017-05-11MySQL Innodb表导致死锁日志情况分析与归纳

文章分类

  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase

最近更新的内容

    • oracle sql 去重复记录不用distinct如何实现
    • mysql的增删改查常用语法
    • MySQL 字符串函数大全
    • SQL字符串以及数字常用操作汇总
    • MySQL的Replace into 与Insert into on duplicate key update真正的不同之处
    • SQLServer中SELECT语句的执行顺序
    • 收藏!MacOSS通过DMG文件安装MySQL之后报错的解决方案
    • MySQL 绿色版安装方法图文教程
    • 解析MySQL中mysqldump工具的基本用法
    • 使用mysql_query()函数执行SQL语句

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有