我想知道使用Zend_Validate
和Zend_FilterInput
验证多维数组的最佳方法是什么。
这是我目前的代码:
$filters = array(
'symbol' => array('StripTags', 'StringTrim'),
'mode' => array('StripTags', 'StringTrim'),
);
$validators = array(
'symbol' => array('NotEmpty'),
'mode' => array('NotEmpty'),
);
$input = new Zend_Filter_Input($filters, $validators, $_POST);
我想在这里添加一个数组,例如name[]
数组(发布一个包含两个/三个名字的数组)。
以下是一个示例$_POST
数组:
array(
'symbol' => 'SD34G',
'mode' => 'back',
'name' => array(
0 => 'Name A',
1 => 'Name B',
2 => 'Name C'
)
)
答案 0 :(得分:2)
好的,我发现我应该使用与字符串相同的方法为数组执行此操作。
Zend_Filter_Input
检查value是否为数组,并foreach
验证其每个元素。
...所以
$filters = array(
'symbol' => array('StripTags', 'StringTrim'),
'mode' => array('StripTags', 'StringTrim'),
'name' => array('StripTags', 'StringTrim'),
);
$validators = array(
'symbol' => array('NotEmpty'),
'mode' => array('NotEmpty'),
'name' => array('NotEmpty'),
);
- )