浅谈 PHP类的自动载入

    最早的PHP主要是通过require或者incloud来挨个载入依赖的文件。当项目变大的时候一个文件要依赖多个类就得在代码之前写很多行require来引入。

    PHP5.2之后,提供了类的自动载入功能,最早是用

function __autoload($class){require __DIR__.'/'.$class.'php;}这个魔术方法,若发现之前调用的类不存在,则会自动调用这个函数,这个函数会把调用的类名告诉你,然后通过函数内的方法自动载入。

但这个函数后来被废弃了,因为当php的工程可能会依赖多个框架,如果说我们每一个框架都有这个函数,那就会报一个函数重复定义的致命错误。在php5.3之后,官方提供了一个spl_autoload_register()函数来取代__autoload()函数,spl_autoload_register()函数允许多个__autoload()函数

这种方法比第一种更先进一些,也是我们目前采用的主要的一种方法。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 在PHP开发过程中,如果希望从外部引入一个class,通常会使用include和require方法,去把定义这...
    四月不见阅读 1,139评论 0 0
  • 本文分为两部分:第一部分讲__autoload()函数实现的类自动加载。第二部分讲spl_autoload_reg...
    舒小贱阅读 2,648评论 1 4
  • Welcome 目前网络上充斥着大量的陈旧信息,让PHP新手误入歧途,传播着错误的实践和糟糕的代码,这必须得到纠正...
    layjoy阅读 21,856评论 7 118
  • 一 预定义接口 1.1 遍历 Traversable(遍历)接口 检测一个类是否可以被foreach遍历,该接口不...
    coderhu阅读 1,311评论 0 0
  • 自由书写第二期,第三篇,2017.1.4 现在的感觉就是很舒服,就是你的喜悦程度会持续很久,不会很容易被一些情绪...
    Vicky靈氣阅读 383评论 0 1

友情链接更多精彩内容