本文整理汇总了PHP中Zend\Form\ElementInterface::getTargetElement方法的典型用法代码示例。如果您正苦于以下问题:PHP ElementInterface::getTargetElement方法的具体用法?PHP ElementInterface::getTargetElement怎么用?PHP ElementInterface::getTargetElement使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Zend\Form\ElementInterface
的用法示例。
在下文中一共展示了ElementInterface::getTargetElement方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: filterFormData
/**
* @static
* @param ElementInterface $element
* @param array|\ArrayAccess|\Traversable $data
* @return null|array|\ArrayAccess|\Traversable
*/
protected static function filterFormData(ElementInterface $element, $data)
{
if (!$data && $element instanceof Collection && $element->getOption('count') == 0) {
return null;
}
if (is_array($data)) {
if ($element instanceof Collection) {
// Collections are to be recursed
foreach ($data as $key => $value) {
$data[$key] = static::filterFormData($element->getTargetElement(), $value);
}
} elseif ($element instanceof FieldsetInterface) {
// Fieldsets are to be recursed
foreach ($data as $key => $value) {
if ($element->has($key)) {
$data[$key] = static::filterFormData($element->get($key), $value);
} else {
unset($data[$key]);
}
}
} else {
// Array for a normal element, make sure there is ANY data in the array
if (count(array_filter($data)) > 0) {
return $data;
} else {
return null;
// null?;
}
}
}
return $data;
}