我已经搜索了互联网,还没有正式的文档将输入过滤器应用于ZF3中的数组。
我看到了ZF2 Zend Framework 2 filter / validate array of contents
的答案任何人都可以帮忙如何将输入过滤器应用于输入数组。
这是我的表单类
class ContactForm extends Form
{
public function __construct($name = null)
{
// we want to ignore the name passed
parent::__construct("contactForm");
$this->addInputFilters();
}
public function init()
{
$this->add([
"name" => "Type[]",
"type" => "text",
"attributes" => [
"class" => "form-control",
],
]);
}
private function addInputFilters() {
$inputFilter->add([
"name" => "Type[]",
"required" => true,
"filters" => [],
"validators" => [
[
"name" => "StringLength",
"options" => [
"min" => 3,
"max" => 100,
],
],
],
]);
}
答案 0 :(得分:0)
我看到的第一个区别是方法名称不是addInputFilters而是addInputFilter,不带's'。
在addInputFilter中,您也没有使用
获得表单输入过滤器$ inputFilter = $ this-> getInputFilter();
实际上,您在示例中实际上是对未定义的变量调用“添加”,但是您发布的示例可能不是有效的代码。
此外,如果要验证集合(哪种数据将要验证'Type []'?),请使用“集合”输入过滤器,并为其分配输入过滤器以验证每个条目。