我已经弄清楚了。
验证器是多维数组,每个数组都有一个名称和一些选项。刚开始可能会有点连线注意到它,但是zf2中的很多配置都是这样的
查看密码示例:
$inputFilter->add($factory->createInput([
'name' => 'password',
'required' => true,
'filters' => [ ['name' => 'StringTrim'], ],
'validators' => [
[
'name' => 'StringLength',
'options' => [
'encoding' => 'UTF-8',
'min' => 6,
'max' => 128,
],
],
],
]));
$inputFilter->add($factory->createInput([
'name' => 'password_verify',
'required' => true,
'filters' => [ ['name' => 'StringTrim'], ],
'validators' => [
array(
'name' => 'StringLength',
'options' => array( 'min' => 6 ),
),
array(
'name' => 'identical',
'options' => array('token' => 'password' )
),
],
]));
请注意,在 php 5.3 > 中,数组可以写成array()
or []
,在上面的示例中,我没有特别的原因将它们混合在一起。