php自动加载机制

方式一:__autoload($className)函数实现
1-通过$className参数实现相应类文件的装载逻辑

方式二:spl_autoload_register(自动加载的回调函数,没有对应函数时是否抛异常,插入装载函数的队列顺序)
1-spl方式可以注册多个回调函数,形成回调队列
--当类不存在的时候,依次执行回调函数,实现不同的加载逻辑
--与方式的显著却别就是方式一只执行一个__autoload()

2-使用这种方式的时,第一种方式将失效
--已实现的__autoload()需要手动注册到回调队列中,spl_autoload_register('__autoload')

3-当不带参数调用spl_autoload_register()时,将spl_autoload(类名,扩展名)加入回调队列
--spl_autoload()函数由系统实现,其基本逻辑就是include/require '类名.扩展名'
--由于sql_autoload()只提供了类名和扩展名参数,则需要使用set_include_path/init_set('include_path')才能实现正确加载
--spl_autoload_extensions()可实现设置多个扩展名的搜索加载
--不带参数的spl_autoload_register()需要放在所有注册之前才能生效

4-spl_autoload_unregister()从回调队列中删除

5-spl_autoload_functions()回调队列列表
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值