致命错误:无法在HtmlHelper.php(CakePHP)中调用构造函数

时间:2012-04-26 17:44:34

标签: php cakephp-2.1

我正在为我的应用使用 cakephp 2.1.1 。我有一个控制器,我在这个控制器中使用文件缓存。在控制器的操作中,我使用插件NUSOAP调用SOAPService。

我有两个动作:

1。索引

public function index() {
    $items = Cache::read('items', 'tenMinutes'); //tenMinutes is the configuration of cache

    if($items){
        $service = new Service();
        $items = $service->callService();
        Cache::write('items',$items,'tenMinutes');
    }

    $this->set('items',$items);
}

2。 get_result

public function get_result() {
    $items = Cache::read('items','tenMinutes');

    if($items){

        //start block code filter items by params  
        ...
        //end

        $service = new Service();
        $result = $service->callService2($items);
        $this->set('result',$result);

    } else {

        //redirect index to load ítems
        $this->redirect(array('controller' =>'controllerName', 'action' => 'index'));
    }
}

缓存的配置是:

Cache::config('tenMinutes', array(
        'engine' => 'File', //[required]
        'duration'=> '10 minutes', //[optional]
        'path' => CACHE, //[optional] use system tmp directory - remember to use absolute path
        'prefix' => 'cake_10_', //[optional]  prefix every cache file with this string
    ));

当我调用index action并且是cakephp第一次在缓存中写入时,我有以下错误:

致命错误:无法在第172行的C:\ wamp \ www \ myapp \ lib \ Cake \ View \ Helper \ HtmlHelper.php中调用构造函数

我第二次输入索引和缓存已经填满了我点击按钮带我到第二个动作(get_result),这会给我带来同样的错误。

有人可以帮助我吗?

由于

1 个答案:

答案 0 :(得分:1)

HtmlHelper 继承自帮助。 也许你已经在项目的某个地方定义了一个自定义类Helper,而HtmlHelper正在尝试使用它的构造函数。