Zend_Form用户错误值解码

时间:2012-02-24 14:15:41

标签: php mysql forms zend-framework encoding

在用户填写表单但未填写必填字段后,表单将返回包含相关元素的错误消息 - 之前填写的所有字段都会再次填写,但输入的数据为{{1}而不是&。

zend如何填充提交并返回用户错误的表单。如何在其上过滤/运行html_entity_decode。

由于

1 个答案:

答案 0 :(得分:0)

您可以使用Zend_Filter对特定方法进行回调来过滤您的字段。

来自Zend documentation

  

回调

     

此过滤器允许您结合使用自己的方法   Zend_Filter的。您尚未创建新过滤器   有一种方法可以完成这项工作。

     

Zend_Filter_Callback支持的选项以下选项是   支持Zend_Filter_Callback:

     

callback:设置应该使用的回调。

     

options:此属性设置在使用时使用的选项   处理回调

基本上,你的元素过滤器看起来像这样:

$myElement->addFilter('Callback', array('callback' => array($this, 'myFilter')))

在同一个类中,您可以创建一个名为myFilter()的方法,该方法采用$value参数。  例如,此函数可以return html_entity_decode;。您还可以使用PHP 5.3+的内联函数:function($v){return(html_entity_decode($v);)}