Shyue

流逝的流年流淌着流传的流言~流浪的流氓继续着流亡......
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

ZendFramework 解析之 Loader模块

Posted on 2012-04-13 16:23  Shyue  阅读(688)  评论(0)    收藏  举报

 ZendFramework 解析之 Loader模块

 

什么是自动加载?
    自动加载(Autoloading)是一种在编码过程中用程序托管代替手动引入(require或include)所依赖的代码文件或类的机制。
    根据PHP手册说明,autoloader一经定义,那么在使用尚未定义(或未引入)的类或接口时,将会自动调用。
    使用自动加载机制不用担心类在项目中的具体位置。 通过设计良好的autoloaders不用关心当前class所关联的目标class的位置直接使用即可,自动加载器会自动查找并加载class文件。
    另外,因为自动加载机制的延迟加载并确保只匹配一次,所以特别是在正式部署前去掉多余的require_once()调用,将会获得很大的性能提升。
    ZF鼓励使用自动加载机制,并且提供了一些tools,以便既能够自动加载ZF的核心库代码有能够实现应用代码的自动加载。后面将会介绍这些工具及如何有效的使用他们。

 

关于Loader模块的说明:

核心Loader类为:zend/Loader.php 

Loader模块的扩展功能类文件位于:zend/loader/目录下,目录结构如下图示:

 

 其中包含了自动加载器(Autoloader)、插件加载器(PluginLoader)及他们对应的同名子目录,这些子目录主要用于存放对应子模块或功能的接口、异常以及相应的扩展功能的定义等。

 

   下面具体解析内容如下: 

1、ZendFramework 自动加载机制的说明

        2、Zend_Loader类结构及功能分析(zend/Loader.php)

3、Zend_Loader_Autoloader类结构及功能分析。

4、Zend_Loader_Autoloader_Interface类结构及功能分析。

5、Zend_Autoloader_Resource类结构及功能分析。

6、Zend_Loader_PluginLoader_Interface类结构及功能分析。

7、Zend_Loader_PluginLoader类结构及功能分析。