Иногда вы не хотите проходить через основной метод помощника вида, хотя это не так уж плохо для некоторых видов логики.В этом случае используйте getHelper()
:
class Zend_View_Helper_MyMenuHelper extends Zend_View_Helper_Abstract
{
public function myMenuHelper()
{
// some logic, maybe the main one
}
public function horizontal()
{
// some other logic
}
}
Следующие примеры полностью обходят myMenuHelper()
:
// in controller
$this->view->getHelper('MyMenuHelper')->horizontal();
// in view
$this->getHelper('MyMenuHelper')->horizontal();`
В некоторых случаях, например, я заполняю помощник вида некоторым внутреннимdata в контроллере , вызывающий его основной метод непосредственно в представлении , которое воздействует на эти данные.
// in controller
$this->view->getHelper('MyMenuHelper')->storeData($someArray);
// in view
$this->myMenuHelper(); // iterates over $someArray