我有一个Zend视图模板,其中包含以下代码行:
$this->headTitle()->setSeparator(' - ')
我的问题是,setSeparator()方法在哪里声明?
我知道headTitle是一个View Helper但是当我查看Zend_View_Helper_HeadTitle类时,我看不到setSeparator方法,也没有看到任何setter。大概是方法(或适当的设定者)在类'祖先中声明,但我似乎无法找到确切的位置......
谢谢!
答案 0 :(得分:4)
它在Zend_View_Helper_Placeholder_Container_Abstract
中定义。
对此方法的访问权限在Zend_View_Helper_Placeholder_Container_Standalone
类中以其魔术方法__call
:
$container = $this->getContainer();
if (method_exists($container, $method)) {
$return = call_user_func_array(array($container, $method), $args);
答案 1 :(得分:0)
使用PHP magic method __set定义。魔术方法在Zend_View_Helper_Placeholder_Container_Standalone类中定义,该类是Zend_View_Helper_HeadLink的基类。