Вы можете использовать фильтры просмотра для этого.Сначала мы должны реализовать Zend_Filter_Interface следующим образом:
class My_View_Filter_PlaceholderReplacer implements Zend_Filter_Interface
{
public function filter($value)
{
return str_replace('[Region_Contents]', 'Hello this is test block', $value);
}
}
В приведенном выше коде $ value содержит строковое представление представления непосредственно перед его отображением.Все, что возвращается вышеупомянутой функцией, будет использоваться ZF при рендеринге представления.Обратите внимание, что мы используем str_replace вместо preg_replace из соображений производительности.
Далее нам нужно указать ZF использовать только что созданный фильтр.Вы можете сделать это в начальной загрузке.
class Bootstrap extends Zend_Application_Bootstrap_Bootstrap
{
protected function _initViewSettings()
{
$this->bootstrap('view');
$view = $this->getResource('view');
$view->addFilterPath('My/View/Filter', 'My_View_Filter');
$view->setFilter('PlaceholderReplacer');
...
}
...
}
Для получения дополнительной информации, пожалуйста, обратитесь к следующим ссылкам:
Руководство по Zend
Zend Framework and Translation