_className . '.' . strtoupper($field)); if (!is_array($temps)) { throw new \Exception(__FUNCTION__ . "에서 {$field}의 데이터가 array가 아닙니다.\n" . var_export($temps, true)); } return array_merge( [DEFAULTS['EMPTY'] => lang($this->_className . '.label.' . $field) . ' 선택'], lang($this->_className . '.' . strtoupper($field)) ); break; } } //Field별 Form Option용 final protected function getFieldFormOptions(array $fieldFilters): array { $fieldFormOptions = array(); foreach ($fieldFilters as $field) { if (is_array($field)) { throw new \Exception(__FUNCTION__ . "에서 field가 array 입니다.\n" . var_export($fieldFilters, true)); } $fieldFormOptions[$field] = $this->getFieldFormOption($field); } return $fieldFormOptions; } //Field별 Form Rule용 final protected function getFieldRules(array $fields, array $fieldRules): array { $tempRules = $this->_model->getValidationRules(['only' => $fields]); foreach ($fields as $field) { if (is_array($field)) { throw new \Exception(__FUNCTION__ . "에서 field가 array 입니다.\n" . var_export($fieldRules, true)); } if (array_key_exists($field, $fieldRules)) { $tempRules[$field] = $fieldRules[$field]; } } return $tempRules; } }