CakePHP 2.4.1和PHP 5.5.9问题

时间:2014-03-17 17:13:58

标签: php cakephp

我有一个CakePHP应用程序可以正常使用PHP:5.3.8。但是,它会在PHP中生成以下错误:5.5.9

Non-static method AppHelper::isCurrent() should not be called statically, assuming $this from incompatible context

View/Themed/Slate/Helper/AppHelper.php我已经制作了这段代码:

function isCurrent($txt, $className = 'active'){                                               
                if ($txt == strtolower($this->name.$this->action)){
                            return $className;
                   }
                   else{
                            return '';
                   }
}

过去,在升级PHP之前,我曾经从视图中调用此函数,如下所示:

<?php echo AppHelper::isCurrent('contactsindex', 'active'); ?>

我尝试在函数名前加上public static来取消此错误,但无法解决此问题。我需要知道如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

tr this

//检视/助手/ AppHelper

class AppHelper extends Helper {

        public function isCurrent($txt, $className = 'active'){                                               
                    if ($txt == strtolower($this->name.$this->action)){
                                return $className;
                       }
                       else{
                                return '';
                       }
        }

    }

//视图

<?php echo $this->Html->isCurrent('contactsindex', 'active'); ?>