action = $acton; return $this; } /** * * @time 2019年12月10日 * @param $method * @return CatchForm */ public function method($method): CatchForm { $this->method = $method; return $this; } /** * * @time 2019年12月10日 * @param $formId * @return CatchForm */ public function formId($formId): CatchForm { $this->formId = $formId; return $this; } /** * * @time 2019年12月10日 * @param string $enctype * @return CatchForm */ public function enctype($enctype ="multipart/form-data"): CatchForm { $this->enctype = $enctype; return $this; } /** * * @time 2019年12月10日 * @param $id * @return CatchForm */ public function id($id): CatchForm { $this->fields[$this->name] = array_merge($this->fields[$this->name], [ 'id' => sprintf('id="%s"', $id), ]); return $this; } /** * * @time 2019年12月10日 * @param string $class * @param string $labelClass * @param string $inlineClass * @return CatchForm */ public function class($class='', $labelClass = '', $inlineClass = ''): CatchForm { $this->fields[$this->name] = array_merge($this->fields[$this->name], [ 'class' => $class, 'labelClass' => $labelClass, 'inlineClass' => $inlineClass, ]); return $this; } /** * * @time 2019年12月10日 * @param array $options * @return CatchForm */ public function options(array $options): CatchForm { $this->fields[$this->name] = array_merge($this->fields[$this->name], [ 'options' => $options, ]); return $this; } /** * * @time 2019年12月10日 * @param $value * @return CatchForm */ public function default($value): CatchForm { $this->fields[$this->name] = array_merge($this->fields[$this->name], [ 'default' => $value, ]); return $this; } /** * * @time 2019年12月10日 * @return CatchForm */ public function disabled(): CatchForm { $this->fields[$this->name] = array_merge($this->fields[$this->name], [ 'disabled' => '', ]); return $this; } /** * * @time 2019年12月10日 * @param $content * @return CatchForm */ public function placeholder($content): CatchForm { $this->fields[$this->name] = array_merge($this->fields[$this->name], [ 'placeholder' => 'placeholder='.$content, ]); return $this; } /** * * @time 2019年12月10日 * @return CatchForm */ public function readonly(): CatchForm { $this->fields[$this->name] = array_merge($this->fields[$this->name], [ 'readonly' => 'readonly', ]); return $this; } /** * * @time 2019年12月10日 * @return string */ public function render(): string { $form = sprintf('
'; } /** * * @time 2019年12月10日 * @param $append * @return CatchForm */ public function append($append): CatchForm { $this->fields[$this->name] = array_merge($this->fields[$this->name], [ 'append' => $append, ]); return $this; } /** * * @time 2019年12月10日 * @param $method * @param $arguments * @return $this */ public function __call($method, $arguments) { // TODO: Implement __call() method. $this->name = $arguments[0] ?? ''; $label = $arguments[1] ?? ''; $required = $arguments[2] ?? false; $this->fields[$this->name] = [ 'name' => $this->name, 'type' => $method, 'label' => $required ? '* '.$label : $label, 'inline' => false, ]; return $this; } /** * * @time 2019年12月10日 * @return CatchForm */ protected function inline(): CatchForm { $this->fields[] = array_merge($this->fields, [ 'inline' => true, ]); return $this; } /** * * @time 2019年12月10日 * @return string */ private function baseField(): string { return '