PHP require_once()和'use'在类中不起作用

时间:2014-12-25 11:21:03

标签: php

function ClassFBLogin($d){  
    require_once('Facebook/autoload.php');
    require_once('Facebook/FacebookSession.php');
    require_once('Facebook/FacebookRedirectLoginHelper.php');
    require_once('Facebook/FacebookRequest.php');
    require_once('Facebook/FacebookResponse.php');
    require_once('Facebook/FacebookSDKException.php');
    require_once('Facebook/FacebookRequestException.php');
    require_once('Facebook/FacebookAuthorizationException.php');
    require_once('Facebook/GraphObject.php');
    require_once('Facebook/HttpClients/FacebookCurl.php');
    require_once('Facebook/HttpClients/FacebookHttpable.php');
    require_once('Facebook/HttpClients/FacebookCurlHttpClient.php');
    require_once('Facebook/Entities/AccessToken.php');
    require_once('Facebook/GraphUser.php');
    require_once('Facebook/GraphSessionInfo.php');

    require_once('Facebook/HttpClients/FacebookGuzzleHttpClient.php'); 
    require_once('Facebook/HttpClients/FacebookStream.php'); 
    require_once('Facebook/HttpClients/FacebookStreamHttpClient.php');

    use Facebook\FacebookSession;
    use Facebook\FacebookRedirectLoginHelper;
    use Facebook\FacebookRequest;
    use Facebook\FacebookResponse;
    use Facebook\FacebookSDKException;
    use Facebook\FacebookRequestException;
    use Facebook\FacebookAuthorizationException;
    use Facebook\GraphObject;
    use Facebook\HttpClients\FacebookCurl;
    use Facebook\HttpClients\FacebookHttpable;
    use Facebook\HttpClients\FacebookCurlHttpClient;
    use Facebook\Entities\AccessToken;
    use Facebook\GraphUser;
    use Facebook\GraphSessionInfo;

    $this->a = $data;
}

当我在没有课程的情况下运行这个程序时它工作得很好但是当我把所有这些代码放在一个类中时我得到以下错误:

语法错误,意外'使用' (T_USE)

还有其他任何方式来调用"使用"一堂课?请帮忙。

1 个答案:

答案 0 :(得分:2)

<强> PHP: Using namespaces: Aliasing/Importing - Manual

  

导入

的范围规则      
    

use 关键字必须在文件的最外层(全局范围)或命名空间内声明中声明。这是因为导入是在编译时完成的,而不是运行时,所以它不能是块作用域。