/** * Render filter form field * * @param \Engine\Crud\Form\Field $field * @return string */ public function renderField(Field $field) { $helpers = $field->getHelpers(); foreach ($helpers as $i => $helper) { $helpers[$i] = Helper::factory($helper, $field); } $sections = []; foreach ($helpers as $helper) { $sections[] = call_user_func_array([$helper['helper'], '_'], [$helper['element']]); } $separator = $this->getSeparator(); $elementContent = implode($separator, $sections); foreach (array_reverse($helpers) as $helper) { $elementContent .= $sections[] = call_user_func([$helper['helper'], 'endTag']); } return $elementContent; }