我正在使用Codeigniter提供的验证库
我的Web应用程序使用会话和javascript来填充警报消息。
因此,我希望我的错误信息是json格式
但辅助函数validation_errors()只输出html格式。
我该怎么办?
if ($this->form_validation->run() == FALSE)
{
add_flash_message('alert', $flash_in_json);
redirect('enquiry/create');
}
答案 0 :(得分:2)
我认为正确的解决方案是扩展CI_Form_validation类以将getter添加到受保护的变量$ _error_ array ..
Class MY_Form_validation extends CI_Form_validation {
function getErrorsArray(
return $this->$_error_array;
)
}
答案 1 :(得分:1)
这是将validation_errors()
输出转换为json
function prep_validation_errors($errors){
$str = str_replace('</p>', '', $errors);
$arr = explode('<p>', $str);
return json_encode($arr);
}
然后您可以将其用作以下内容:
$json = $this->prep_validation_errors(validation_errors());