我的模型中有各种各样的功能,用于不同的目的。
例如,查找URL字符串中给定$ _GET变量的数据。
如果由于url字符串操作导致数据库中没有匹配的行,我试图找出一种显示错误消息的方法。
我的第一个想法只是在每次调用函数时返回一条错误消息(如果有错误),然后只需要一个if语句,如果出现错误,则会显示错误视图,如果不是,正常视图显示..
问题在于我的控制器中多次调用此函数,并且在我的代码中调用其他类似函数,这些函数需要类似的错误处理。
我不想在我的代码中使用数百万个类似的if / else语句来处理错误。
有人有更好的想法吗? 干杯
答案 0 :(得分:1)
使用会话类的flashdata项。您可以连接错误消息并将它们放入要显示的flashdata项目中。
my_function(){
// code that determines if there is an error returns => $error
if ($error)
{
// concat previous and current errors
$new_error = $this->session->flashdata('errors') . $error;
// replace 'errors' with newly concatenated errors
$this->session->set_flashdata('errors', $new_error);
}
}
这将跟踪每个请求生成的所有错误,并允许您显示"列表"该特定请求的错误。
echo $this->session->flashdata('errors');