为了账号安全,请及时绑定邮箱和手机立即绑定

spl_autoload_register 参数问题

spl_autoload_register 参数问题

三国纷争 2019-04-16 20:27:52
我看到symfony2的Psr4ClassLoader类中有一句是:publicfunctionregister($prepend=false){spl_autoload_register(array($this,'loadClass'),true,$prepend);}spl_autoload_register函数的第一个参数是字符串的话,我能理解是将名为字符串的函数加到autoload栈中。但是这里是一个数组是什么意思呢?
查看完整描述

2 回答

?
拉风的咖菲猫

TA贡献1995条经验 获得超2个赞

Callable的回调类型有几种,题主说的是简单回调类型,传递一个字符串就是回调这个字符串命名的函数。还有传入数组的话,分两种:一种是静态方法回调,一种是对象方法回调。题主贴的代码是对象方法回调,调用本类的$this->loadClass()方法,当然,如果loadClass是静态方法,把$this换成当前类的名字以字符串形式传递就行,或者这么写:spl_autoload_register('MyClass::loadClass',true,$prepend);。这里是回调类型官网地址,可以看看:Callback回调类型
                            
查看完整回答
反对 回复 2019-04-16
?
温温酱

TA贡献1752条经验 获得超4个赞

出现这个问题说明你没有掌握php描述和处理回调的几种方式。
能通过is_callable的可以直接被一系列函数处理,参数是能够定位调用位置的字符串或数组。
                            
查看完整回答
反对 回复 2019-04-16
  • 2 回答
  • 0 关注
  • 415 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号