我正在尝试在bootstrap中创建一个函数来为Zend_Filter_StripTags设置intitiate对象,这样我就可以在整个应用程序中使用它的对象。
protected function _initHtmlFilter() {
$allowedTags = array('p','b','br','strong'); // Allowed tags
$allowedAttributes = array('href'); // Allowed attributes
$stripTags = new Zend_Filter_StripTags($allowedTags,$allowedAttributes);
}
但我无法在任何控制器中使用此对象($ stripTags)。
答案 0 :(得分:1)
我会为此创建一个Controller Action Helper:
class My_Controller_Action_Helper_StripTags extends
Zend_Controller_Action_Helper_Abstract
{
/**
* StripTags
*
* @param string $input String to strip tags from
*
* @return string String without tags
*/
public function stripTags($input)
{
$allowedTags = array('p','b','br','strong'); // Allowed tags
$allowedAttributes = array('href'); // Allowed attributes
$stripTags = new Zend_Filter_StripTags($allowedTags,$allowedAttributes);
// return input without tags
return $stripTags->filter($input);
}
}
// example in indexAction
$noTags = $this->_helper->stripTags('<h2>TEST</h2>');
您必须在application.ini中添加帮助程序的路径:
resources.frontController.actionhelperpaths.My_Controller_Action_Helper_ = "My/Controller/Action/Helper"
答案 1 :(得分:0)
您可以使用zend注册表:
protected function _initHtmlFilter() {
$allowedTags = array('p','b','br','strong'); // Allowed tags
$allowedAttributes = array('href'); // Allowed attributes
$stripTags = new Zend_Filter_StripTags($allowedTags,$allowedAttributes);
Zend_Registry::set('zend_strip_tags', $stripTags);
}
并且可以在以下任何地方访问它:
Zend_Registry::get('zend_strip_tags');