如何将过滤器应用于包含数组内容的字段元素?
例如:
$this->add(
"name" => "tags",
"type" => "text",
"filter" => array(
array("name" => "StripTags"),
array("name" => "StringTrim")
)
);
$tags[0] = "PHP";
$tags[1] = "CSS";
如果我尝试过滤,我会收到一条错误消息,指出标量对象被排除,数组已给定。
最佳答案
目前这真的不可能。你最好的选择是使用 Callback filter并单独过滤每个项目。像这样
$this->add(
"name" => "tags",
"type" => "text",
"filter" => array(
array("name" => "Callback", "options" => array(
"callback" => function($tags) {
$strip = new \Zend\Filter\StripTags();
$trim = new \Zend\Filter\StringTrim();
foreach($tags as $key => $tag) {
$tag = $strip->filter($tag);
$tag = $trim->filter($tag);
$tags[$key] = $tag;
}
return $tags;
}))
)
);
关于php - Zend Framework 2 过滤/验证内容数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18293870/