我在cakephp 1.3上有一个网站,有facebook集成。在我的localhost(使用Windows操作系统)它工作正常,但在真正的托管(使用Linux操作系统)它会出现此错误Fatal error: Class 'Facebook' not found in /home/username/public_html/app/plugins/facebook/libs/f_b.php on line 22
。
这是f_b.php
App::import('Vendor', 'Facebook.facebook/src/facebook');
App::import('Lib', 'Facebook.FacebookInfo');
class FB {
/**
* Facebook Api
*/
public static $Facebook = null;
public function __construct() {
if (empty(self::$Facebook)) {
self::$Facebook = new Facebook(FacebookInfo::getConfig()); } // 22 line
}
所以,显然它无法加载Vender,我认为路径有问题,虽然这不起作用App::import('Vendor', 'Facebook.facebook'.DS.'src'.DS.'facebook');
f_b.php
位于plugins/facebook/libs/
文件夹中,此Facebook.php
供应商位于plugins/facebook/vendors/facebook/src
文件夹
由于
答案 0 :(得分:0)
我说你的路径看起来不正确(为什么有点?)。
当我使用CakePHP的插件时,我必须通过取消评论 app / config / bootstrap.php 中的Plugins::loadAll()
行来启用它们。然后,这将使我的库在CakePHP应用程序中可用。
答案 1 :(得分:0)
最后我找到了我的问题的解决方案,为了在windows和linux上工作,有必要像这样写
App::import('Vendor', 'Facebook.Facebook', array('file' => 'facebook/src/Facebook.php' ));
这里有几个例子 - Vendor examples