'请填写申请ID'], ['id', 'integer', 'min' => 1, 'message' => '申请ID格式错误', 'tooSmall' => '申请ID格式错误'], ['formData', 'required', 'message' => '请填写表单数据'], ['formData', 'validateFormData'], ['currentStep', 'default', 'value' => 1], [ 'currentStep', 'integer', 'min' => 1, 'max' => 5, 'message' => '当前步骤格式错误', 'tooSmall' => '当前步骤格式错误', 'tooBig' => '当前步骤格式错误', ], ]; } public function attributeLabels() { return [ 'id' => '申请ID', 'formData' => '表单数据', 'currentStep' => '当前步骤', ]; } public function validateFormData($attribute) { $formData = $this->$attribute; if (is_string($formData)) { $formData = json_decode($formData, true); } if (!is_array($formData)) { $this->addError($attribute, '表单数据格式错误'); return; } $this->$attribute = $formData; } public function getFormData() { return $this->formData; } }