0

我有一个关于 cakephp 1.3 的网站,带有 facebook 集成。在我的本地主机(使用 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
  }

所以,显然它无法加载供应商,我认为路径有问题,尽管这也不起作用App::import('Vendor', 'Facebook.facebook'.DS.'src'.DS.'facebook');

f_b.php位于plugins/facebook/libs/文件夹中,此Facebook.php供应商位于plugins/facebook/vendors/facebook/src文件夹中

谢谢

4

2 回答 2

1

最后我找到了我的问题的解决方案,为了同时在 Windows 和 linux 上工作,有必要这样写

App::import('Vendor', 'Facebook.Facebook', array('file' => 'facebook/src/Facebook.php' ));

这里有几个例子 -供应商示例

于 2012-12-04T11:52:52.893 回答
0

我会说你的路径看起来不正确(为什么有一个点?)。

当我在 CakePHP 中使用插件时,我必须通过取消注释app/config/bootstrap.phpPlugins::loadAll()中的行来启用它们。这将使我的库在我的 CakePHP 应用程序中可用。

于 2012-12-04T09:10:23.240 回答