input('content'); if (is_string($content)) { $decoded = json_decode($content, true); if (json_last_error() === JSON_ERROR_NONE && is_array($decoded)) { $this->merge(['content' => $decoded]); } } } /** * 요청에 적용할 검증 규칙 * * @return array|string> */ public function rules(): array { return [ 'content' => ['required', 'array'], ]; } /** * 검증 오류 메시지 커스터마이징 * * @return array */ public function messages(): array { return [ 'content.required' => __('validation.layout.content.required'), 'content.array' => __('validation.layout.content.array'), ]; } }