CodeIgniter中遇到PHP错误


A PHP Error was encountered in CodeIgniter

帮助:

I have error:

遇到PHP错误

严重性:警告

消息:非法的字符串偏移量"periode"

文件名:models/k3m.php

线路编号:32

遇到PHP错误

严重性:警告

消息:非法的字符串偏移量"bulan"

文件名:models/k3m.php

线路编号:33

致命错误:在第39行的C:''LaporBOS''htdocs''laporbos3''application''modules''laporan_k3''models''k3m.php中的非对象上调用成员函数row()

    function saldo_bank($param) {
    $periode = $param['periode'];
    $bulan = $param['bulan'];
    $bulan = $this->get_bulan2($periode,$bulan);
    $sql="SELECT IFNULL( SUM(IFNULL(jumlah_debet,0) ),0) - IFNULL( SUM(IFNULL(jumlah_kredit,0) ),0) AS saldo
            FROM buku_bank
            WHERE YEAR(tanggal) =".$this->session->userdata("tahun_anggaran")." 
            AND MONTH(tanggal) < $bulan";
    $data = $this->db->query($sql)->row();
    return $data->saldo;
}

发生这种情况是因为在调用result()之前调用了row(),所以请更改此

$data = $this->db->query($sql)->row();

到这个

$data = $this->db->query($sql)->result()->row();

您传递的数组内部的偏移量不可用。请尝试检查数组传递具有您调用的偏移量,并将其设置为变量。检查$param数组,在函数的顶部写下

echo "<pre>";
print_r($param); exit;

然后查看

$periode = $param['periode'];

数组中是否存在"periode"或"bulan"。