【问题标题】:codeigniter 3 query error handlingcodeigniter 3 查询错误处理
【发布时间】:2017-06-30 10:37:46
【问题描述】:

我正在将 CI2 项目迁移到 CI3。

我遇到的一件事是处理数据库查询中的错误。有人可以告诉我正确的方法,因为我似乎无法在文档或以前的 SO 问题中找到答案。

基本上,如果查询导致 sql 错误,我想返回 false。目前,error() 似乎返回一个数组,因此无论是否有错误,它总是返回 true,这意味着我的方法总是返回 false。

function get_post()
{
    $post = //some db call to get a post

    if ( $this->db->error() )
    {
        return false;
    }
    else
    {
        return $post
    }
}

【问题讨论】:

    标签: php sql codeigniter error-handling codeigniter-3


    【解决方案1】:

    处理错误

    $this->db->error();
    

    如果您需要获取最后发生的错误,error() 方法将返回一个包含其代码和消息的数组。

    这是一个简单的例子:

    if ( ! $this->db->simple_query('SELECT `example_field` FROM `example_table`')) {
        $error = $this->db->error(); // Has keys 'code' and 'message'
    }
    

    1 : config/database.php

    中的更改
    'db_debug' => FALSE,
    

    2:

    function get_post() {
    
        $post = //some db call to get a post
    
        $error = $this->db->error();
    
        if ( ! empty($error['code'])) {
            return FALSE;
        } else {
            return $post;
        }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-07-21
      • 1970-01-01
      • 1970-01-01
      • 2012-03-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-05-01
      相关资源
      最近更新 更多