php Facebook SDK命名空间错误


php Facebook SDK namespace error

我试图在我的网站上获得新的facebook php sdk设置。我正在运行最新的稳定版本的php。我以前从来没有摆弄过名称空间。有人能告诉我我哪里做错了吗?

我得到这个错误

Fatal error: Class 'FacebookSession' not found in

当我运行这段代码

FacebookSession::setDefaultApplication( 'xxx','yyy' );

// path of these files have changes
require_once( '/var/www/vhosts/server/site/lib/fb/Facebook/HttpClients/FacebookHttpable.php' );
require_once( '/var/www/vhosts/server/site/lib/fb/Facebook/HttpClients/FacebookCurl.php' );
require_once( '/var/www/vhosts/server/site/lib/fb/Facebook/HttpClients/FacebookCurlHttpClient.php' );
// other files remain the same
require_once( '/var/www/vhosts/server/site/lib/fb/Facebook/FacebookSession.php' );
require_once( '/var/www/vhosts/server/site/lib/fb/Facebook/FacebookRedirectLoginHelper.php' );
require_once( '/var/www/vhosts/server/site/lib/fb/Facebook/FacebookRequest.php' );
require_once( '/var/www/vhosts/server/site/lib/fb/Facebook/FacebookResponse.php' );
require_once( '/var/www/vhosts/server/site/lib/fb/Facebook/FacebookSDKException.php' );
require_once( '/var/www/vhosts/server/site/lib/fb/Facebook/FacebookRequestException.php' );
require_once( '/var/www/vhosts/server/site/lib/fb/Facebook/FacebookOtherException.php' );
require_once( '/var/www/vhosts/server/site/lib/fb/Facebook/FacebookAuthorizationException.php' );
require_once( '/var/www/vhosts/server/site/lib/fb/Facebook/GraphObject.php' );
require_once( '/var/www/vhosts/server/site/lib/fb/Facebook/GraphSessionInfo.php' );
// path of these files have changes
use Facebook'HttpClients'FacebookHttpable;
use Facebook'HttpClients'FacebookCurl;
use Facebook'HttpClients'FacebookCurlHttpClient;
use Facebook'FacebookSession;
use Facebook'FacebookRedirectLoginHelper;
use Facebook'FacebookRequest;
use Facebook'FacebookResponse;
use Facebook'FacebookSDKException;
use Facebook'FacebookRequestException;
use Facebook'FacebookOtherException;
use Facebook'FacebookAuthorizationException;
use Facebook'GraphObject;
use Facebook'GraphSessionInfo;

你不需要使用完整的路径到Facebook SDK,除非你试图从一个完全不同的位置访问它。您应该能够使用一个相对路径访问它,比如lib/fb/Facebook/GraphSessionInfo.php,假设您的index.php文件位于site文件夹。

同样,尝试执行以下操作,看看是否仍然得到错误:

Facebook'FacebookSession::setDefaultApplication( 'xxx','yyy' );

问题是由于PEAR安装在服务器上的电子邮件。php设置中的include路径被修改。

我实际上删除了PEAR,将PHP设置回默认包含路径,并将电子邮件切换为swiftmailer。