如何在validation_errors()中添加换行并自定义错误显示格式?
解决CodeIgniter验证错误的格式问题
嘿,我来帮你搞定这个验证错误显示的问题~
给每个错误添加换行符
CodeIgniter的validation_errors()函数其实支持自定义前缀和后缀参数,默认它会用<p>标签包裹每个错误,所以输出后会自动换行(因为<p>是块级元素)。如果你想更灵活地控制换行方式,可以手动指定后缀为<br>:
// 每个错误后添加HTML换行符 echo validation_errors('<span class="error-msg">', '</span><br>');
如果是在命令行等纯文本环境下,就用文本换行符\n:
echo validation_errors('', '\n');
实现带序号的错误格式(error1: xxx error2: xxx)
如果要实现这种带序号的格式,直接用validation_errors()就没办法了,这时候我们需要获取错误数组来手动拼接。CodeIgniter提供了error_array()方法来获取所有验证错误的数组,遍历它就能轻松实现你要的格式:
// 获取所有验证错误的数组 $errors = $this->form_validation->error_array(); // 如果有错误,就拼接成目标格式 if (!empty($errors)) { $display_text = ''; $count = 1; foreach ($errors as $error_msg) { // 这里可以根据需求调整,比如加<br>实现每个错误换行 $display_text .= "error{$count}: {$error_msg}<br>"; $count++; } echo $display_text; }
这样输出的结果就会是error1: 错误内容1<br>error2: 错误内容2<br>的形式,完全符合你的要求~
内容的提问来源于stack exchange,提问作者rich
相关产品推荐
相关产品推荐

