解析错误,在activecollab模型类中预期出现“ T_PAAMAYIM_NEKUDOTAYIM”错误

Sha*_*man 4 php permissions controller module activecollab

我正在使用activecollab自定义模块的权限,并且在尝试调用静态方法的函数时收到此错误消息,但不知道为什么;请帮忙,真的很讨人喜欢..

Parse error: parse error, expecting `T_PAAMAYIM_NEKUDOTAYIM' in D:\wamp\www\activecollab\public\activecollab\3.0.9\modules\projectcomrequest\models\Projectcomrequests.class.php on line 130
Run Code Online (Sandbox Code Playgroud)

我在模型文件中执行的代码是:

  class Projectrequests extends DataManager {

   ...
   ....

        function getPermissionValue($name){
            $roles = Roles::find();
            foreach($roles as $role) {
                if($role->getPermissionValue($name))
                    return true;
                else
                    return false;
        }

        static function canAccess() {
          if(self::getPermissionValue('can_use_project_request')) return true;
            return false;
        } // canAccess

  ...
  ..

  }
Run Code Online (Sandbox Code Playgroud)

以此调用控制器:

echo Projectrequests::canAccess();
Run Code Online (Sandbox Code Playgroud)

psy*_*ott 5

    foreach($roles as $role) {
        if($role->getPermissionValue($name))
            return true;
        else
            return false;
Run Code Online (Sandbox Code Playgroud)

您在此缺少结束符}。因此应该是:

  class Projectrequests extends DataManager {

   ...
   ....

        function getPermissionValue($name){
            $roles = Roles::find();
            foreach($roles as $role) {
                if($role->getPermissionValue($name))
                    return true;
                else
                    return false;
            } // <-- here
        }

        static function canAccess() {
          if(self::getPermissionValue('can_use_project_request')) return true;
            return false;
        } // canAccess

  ...
  ..

  }
Run Code Online (Sandbox Code Playgroud)