Php 无法将mysqli类型的对象用作数组

Php 无法将mysqli类型的对象用作数组,php,html,codeigniter,Php,Html,Codeigniter,我正在尝试生成pdf报告,但出现以下错误: Type: Error Message: Cannot use object of type mysqli as an array 型号 function pdf($post_id) { $result = $this->db->query("SELECT * FROM tb_data_utama WHERE nipBaru='$post_id'"); return $result; } 控制器 functio

我正在尝试生成pdf报告,但出现以下错误:

Type: Error

Message: Cannot use object of type mysqli as an array
型号

function pdf($post_id)
 {
 $result = $this->db->query("SELECT * FROM tb_data_utama WHERE nipBaru='$post_id'");
        return $result;
 }
控制器

 function getpdf()
    {
        $this->load->model('model_user');
        $this->load->library('pdf');
        $post_id = $this->uri->segment(3);
        $x['data'] = $this->model_user->pdf($post_id);
        $html = $this->load->view('GeneratePdfView', $x, [], true);
        $this->pdf->createPDF($html, 'mypdf', false);
    }
您需要添加才能运行您的查询
来自文档

函数的作用是:返回一个对象数组。例子: $row->title


$x['data']=$this->model\u user->pdf($post\u id)->result\u array() 通过此
$this->db->query()
您只执行查询。没有得到结果。 使用多种方法之一获取结果-结果()行数组()结果数组()

在您的型号中-

function pdf($post_id)
 {
  $result = $this->db->query("SELECT * FROM tb_data_utama WHERE nipBaru='$post_id'");
  return $result->row_array();
 }
视图中使用如下值-

echo $data['nipBaru'];

您可以通过以下方式简单地传递返回数组

function pdf($post_id)
{
    $result = $this->db->query("SELECT * FROM tb_data_utama WHERE nipBaru='$post_id'");
    return $result->result_array();;
}

这是一个糟糕的做法,当您要在结果中获得多行时,它会给您一条记录only@MacRathod,我使用它是因为查询将只返回与传递的post\u id对应的单个post的数据
function pdf($post_id)
{
    $result = $this->db->query("SELECT * FROM tb_data_utama WHERE nipBaru='$post_id'");
    return $result->result_array();;
}