欢迎光临 Rick 's BLOG
日志首页  | C# .Net编程  | 原创作品  | 生活点滴  | C\C++相关  | 多媒体相关※ERMP  | VB相关  | 其它运维与编程  |  留言簿
在CodeIgniter4中实现文件下载,以及nginx实现上传文件夹名的重写 常见垃圾爬虫、蜘蛛及屏蔽方法
未知  PHP中通过闭包函数绑定的方式访问类的私有成员
[ 发布日期:12个月前 (12-12) ]   [ 来自:本站原创 ] [分类:其它运维与编程]
闭包是一个好东西,有点像C++中的函数指针、C#中的委托。
PHP可以将一个闭包函数绑定到一个类上面。
然后这个闭包函数就拥有了php类的成员函数的权限。
这样就可以通过闭包函数直接访问到类的私有成员了。
实例代码:

[复制到剪贴板]

class MyCls {private $v 1;}
//定义一个闭包函数
//因为后续会绑定到类,所以在函数中我们可以像类的成员函数一些访问到类中的变量。
//例如魔法变量$this
$getPrivateV = function() {return $this->v;};

//类的实例
$myCls = new MyCls();

//绑定方法有两种:

// PHP 7 之前版本的绑定方式
$getV $getPrivateV->bindTo($myCls'MyCls'); // 中间层闭包
echo $getV();

// PHP 7+ 及更高版本的代码
echo $getPrivateV->call($myCls);
 




如果是使用了php7+,我们会发现访问是这么的方便。
引用通告地址 (0):
复制引用地址https://www.rickw.cn/trackback/303
复制引用地址https://www.rickw.cn/trackback/303/GBK
[ 分类:其它运维与编程  | 查看:575 ]

暂时没有评论,快来发表一个评论吧。
发表评论
作者:   用户:[访客] 
评论:

表  情
禁止表情 | 禁止UBB | 禁止图片 | 识别链接
对不起,你没有权限上传附件!
验证:
 
PoweredBy R-Blog V1.00 © 2004-2024 WWW.RICKW.CN, Processed in second(s) , 7 queries    京ICP备17058477号-5