目录
当前位置: 首页 > 文档资料 > Yaf 用户手册 >

11.3. The Yaf_Loader class

优质
小牛编辑
136浏览
2023-12-01

简介

Yaf_Loader类为Yaf提供了自动加载功能, 它根据类名中包含的路径信息实现类的定位和自动加载.

Yaf_Loader也提供了对传统的require_once的替代方案, 相比传统的require_once, 因为舍弃对require的支持, 所以性能能有一丁点小优势.

在PHP5.3之后, 打开yaf.use_namespace的情况下, 也可以使用Yaf\Loader.

 
  final 
  Yaf_Loader
{
  
  protected 
  static 
  
 Yaf_Loader
 
 _instance

   ;
  
  protected 
  
 string
 
 _library_directory

   ;
  
  protected 
  
 string
 
 _global_library_directory

   ;
  
  protected 
  
 string
 
 _local_ns

   ;
public static Yaf_Loader 
 getInstance ( string  $local_library_directory = NULL ,
 string  $global_library_directory = NULL );
public Yaf_Loader 
 registerLocalNamespace ( mixed  $namespace );
public boolean 
 getLocalNamespace ( void  );
public boolean 
 clearLocalNamespace ( void  );
public boolean 
 isLocalName ( string  $class_name );
public static boolean 
 import ( string  $file_name );
public boolean 
 autoload ( string  $class_name );
}
属性说明
_instance

Yaf_Loader实现了单利模式, 一般的它由Yaf_Application负责初始化. 此属性保存当前实例

_library_directory

本地(自身)类加载路径, 一般的, 属性的值来自配置文件中的ap.library

_global_library_directory

全局类加载路径, 一般的, 属性的值来自php.ini中的ap.library

_local_ns

本地类的类名前缀, 此属性通过Yaf_Loader::registerLocalNamespace来添加新的值