我正在尝试从我的应用程序外部包含一个杂项库类(它被不同的应用程序使用)。
我的应用程序位于:
/var/www/websites/my_website/app/
课程位于:
/var/www/websites/libs/CakePHP/MyClass.php
在我的bootstrap中,我正在努力弄清楚如何添加从该目录加载类的路径:
App::build(array('Lib' => array('/var/www/websites/lib/')));
App::uses('MyClass', 'CakePHP');
$myClass = new MyClass();
答案 0 :(得分:3)
不应在您的引导程序中加载,而应使用AppController
的{{1}}方法加载。
此外,还有一个非Cake库的保留位置,即beforeFilter
目录。您可以将所有课程放在那里,然后通过以下方式轻松加载团队:
app/Vendor
如果确实需要在备用路径中,则需要指定并调用完整路径。并确保使用相同的名称。现在,您正在指定App::uses('MyClass', 'Vendor');
,但是调用Lib
就好像它本身就是CakePHP
(事实并非如此)。这不行。它看起来应该是这样的:
build
同时检查加载供应商文件的the documentation,它有很多例子。