【问题标题】:Proper handling of errors stored in a class in code igniter正确处理存储在 codeigniter 中的类中的错误
【发布时间】:2016-08-18 23:39:51
【问题描述】:

我正在使用代码点火器做一个项目,我必须将所有错误消息传递给 ajax。所以我正在考虑将它们放在一个数组中。我该怎么办?

我想到的第一种方法是创建一个类来存储所有错误消息并显示它们,就像这样。

class errors {
    public $errorList = array();
    public function set_error($key, $message)
        $errorList[$key] = $message;
    }

    public function display_errors()
    {
        return $errorLis;
    }
}

我会这样使用它:

public function upload_file()
{
    // if file not uploaded,
    set_error("file upload", $this->upload->display_errors());
}

这种方法好吗?它有什么问题?有什么更好的方法?

【问题讨论】:

    标签: php codeigniter design-patterns error-handling exception-handling


    【解决方案1】:

    您可以使用flashdata 控制器:

    class Welcome extends CI_Controller {
    
     public function add_user() {  
    
         //insert or update code
         $this->session->set_flashdata('message', 'Successfully Added.');
         $this->load->view('index'); 
         }   
     }
    

    查看:

    <?php if($this->session->flashdata('message')){?> 
        <div class="alert alert-success">  
        <?php echo $this->session->flashdata('message')?> 
        </div>
     <?php } ?>
    

    【讨论】:

    • 您能进一步解释一下吗?它比我的方法更好吗?如何使用闪存数据将它们存储到数组中?我知道它会在请求后被销毁?
    • 但是如果我必须通过 ajax 发送多个错误消息会怎样?
    • 你可以用这个; $myArr = array('值 1', '值 1'); $this->session->set_flashdata('myArray', $myArr);
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-01-30
    • 2011-12-26
    • 2011-04-12
    • 2011-08-27
    • 1970-01-01
    • 2011-12-04
    • 2012-10-06
    相关资源
    最近更新 更多