Zend View助手问题

时间:2011-01-08 00:22:39

标签: php zend-framework

我终于得到了一个zend视图助手,在我的帮助文件中使用它:

class MY_View_Helper_Table extends Zend_View_Helper_Abstract
{   
    private $table_data="",$table_head="";

    public function Table($data=''){
        return "hello";
    }
}

这在我看来:

print $this->Table();

我认为这只是打印出构造函数的返回值。如何调用该类的其他方法?我真的不知道如何引用instanced对象来访问它的方法。

1 个答案:

答案 0 :(得分:3)

  

我已经成功地使用了它   方法链接,在表I中返回   $这一点;但必须有一个更好的和   正常的做法。

其实没有。这通常是你如何做到的。由于视图帮助程序的工作方式,如果您需要访问帮助程序上的其他方法,则始终从$this方法返回table,或者通过传递给它的参数签名检测要调用的内容。对于eaxmple:

public function table($options = null)
{
   if(null === $options){
      return $this;
   }

   if(is_array($options)){
     return $this->tableFromArray($options);
   }

   // etc..
}

您还可以使用$this->getHelper('name')获取帮助程序实例,然后链接到您想要的方法...但IMO比仅将默认方法视为getter的参数检测更令人困惑。