所以,我在 Zend Framework 的表单中使用过滤器时遇到了问题。
当您在表单元素上设置过滤器时,它会以各种方式过滤提供给元素的数据。因此,如果我在表单上调用 isValid(),'Int' 过滤器会将字符串“1”转换为 int 1。但如果我将元素的值设置为字符串“1”,该值仍将转换为一个整数 1。
这种行为给我带来了问题。例如,根据企业的规则,所有浮点值必须乘以 100 才能保存到 db(是的,这很糟糕)。所以,我为此创建了一个过滤器,10 变为 1000。但是当填充表单时,1000 变为 100000。
我想要一种方法来做到这一点,而无需在模型中工作,仅在形式中。所以,我想创建一个标志,以指定何时调用过滤器。
有没有更好的方法来做到这一点?我发誓我确实四处寻找过,但我什么也没找到。
谢谢。