名称

Yaf_Loader::autoload

(Since Yaf 1.0.0.5)

public static boolean Yaf_Loader::autoload( string  $class_name );

载入一个类, 这个方法被Yaf用作自动加载类的方法, 当然也可以手动调用.

参数
$class_name

要载入的类名, 类名必须包含路径信息, 也就是下划线分隔的路径信息和类名. 载入的过程中, 首先会判断这个类名是否是本地类, 如果是本地类, 则使用本地类类库目录, 否则使用全局类目录. 然后判断yaf.lowcase_path是否开启, 如果开启, 则会把类名中的路径部分全部小写. 然后加载, 执行.

        
        /** yaf.lowcase_path=0 */
        Foo_Bar_Dummy表示这个类存在于类库目录下的Foo/Bar/Dummy.php

        /** yaf.lowcase_path=1 */
        Foo_Bar_Dummy表示这个类存在于类库目录下的foo/bar/Dummy.php
        
       
[注意] 注意
在php.ini中的yaf.lowcase_path开启的情况下, 路径信息中的目录部分都会被转换成小写.
返回值

成功返回TRUE

[注意] 注意
在php.ini中的yaf.use_spl_autoload关闭的情况下, 即使类没有找到, Yaf_Loader::autoload也会返回TRUE, 剥夺其后面的自动加载函数的执行权利.
例子

例 11.13. Yaf_Loader::autoload 的例子

     
     <?php
     Yaf_Loader::autoload("Baidu_ST_Dummy_Bar");
     ?>
     
    


参见
Yaf_Loader::import