1 回答
pardon110
TA贡献1038条经验 获得超227个赞
$d是一个匿名函数作为变量的值,$d()为执行匿名函数,得到外部类Bim实例,
$d()->doSomething(),执行Bim实例的doSomething方法,所以可行。
$c是Container的实例
$c->bim 实例属性指向的是一个匿名函数形成的闭包(匿名函数目前是通过Closure 类来实现的),PHP 会自动把此种表达式转换成内置类 Closure 的对象实例,很显然Closue类(php内置类)是没有doSomething方法
$c->bim() 很显然执行类container的bim方法,显然该类没有此方法,所以$c->bim()->doSomething()不可行,因为他走到$c->bim()就报致命错了。
- 1 回答
- 4 关注
- 1163 浏览
添加回答
举报
0/150
提交
取消