嗨,我正在使用cakephp,有一些供应商文件我需要添加到自动加载。这是正确的方法吗:
在bootstrap.php中,我有以下代码:

function __autoload($className){

        $classFile = '../vendors/phprtf/' . str_replace('_', '/', $className) . '.php';

        // check if file exists
         if(file_exists($classFile)) {
            require $classFile;
        }

}

phprtflite在不同的子目录下有很多类文件。所以把它们都列出来并不是一个好的选择。
现在看来还管用。

最佳答案

您应该使用spl_autoload_register()来获得它提供的灵活性。
如果您的代码有一个现有的__autoload函数,那么这个函数
必须在__autoload堆栈上显式注册。这是因为
spl_autoload_register()将有效地替换
__autoload的功能
spl_autoload()
如果必须有多个自动加载功能,spl_autoload_call()
允许这样做。它有效地创建了一个自动加载函数队列,
并按定义的顺序遍历它们。通过
对比度,spl_autoload_register()只能定义一次。

关于php - 如何允许在CakePHP中自动加载自定义库?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7142835/

10-11 02:29