Zend-framework-访问zf2过滤器中的其他表单字段

时间:2017-01-25 09:11:34

标签: php zend-framework zend-filter

我在Zend-Framework2中遇到问题,我需要在一个字段的过滤器中读取/写入不同字段的值。

我有一个从用户那里获取地址数据的表单: street,number,numberAddition,zipcode,city

我需要将 number numberAddition 分开,因为当我进一步处理这些数据时,我有一些严格的约束。数字必须是数字(int), numberAddition 可以是字符串。

示例用户输入:
号码:47a
numberAddition :[empty]

应该过滤到:
数量:47
numberAddition :a

我想将其作为过滤器实现:如果 numberAddition 为空且number不是int,则将数字拆分为数字, numberAddition

有没有办法用过滤器做到这一点,还是有更好的方法?

1 个答案:

答案 0 :(得分:0)

这不是一个合适的解决方案

FilterInterfaceValidatorInterface中我们都看不到传入的任何$context变量,因此下面的解决方案不保证任何向前兼容性(基本上有人可以删除{{ 1}}并且您的代码将不再起作用,无需等待主要版本执行此操作,因为它已经不是接口的一部分。)

在您的代码中,您仍然可以使用$context,因为现在您知道自己在做什么了; p

基本上是这样的:

$context