Codeigniter 为什么我的视图显示错误:数组到字符串转换

Codeigniter 为什么我的视图显示错误:数组到字符串转换,codeigniter,Codeigniter,我在控制器函数中生成表格,并调用表格在视图页面中显示 这是“查看我的代码”页面 <?php foreach($tables as $table){ echo $tables; } ?> 这是我的控制器 $table =''; $tables[]= array(); $result = array(); $param = new stdClass(); if(sizeof($_GET) > 0){

我在控制器函数中生成表格,并调用表格在视图页面中显示

这是“查看我的代码”页面

<?php 
    foreach($tables as $table){
        echo $tables;
    }
?>

这是我的控制器

$table ='';
    $tables[]= array();
    $result = array();
    $param = new stdClass();

    if(sizeof($_GET) > 0){
        $param->date_from = $this->input->get('date_from');
        $param->date_to = $this->input->get('date_to');
        $param->sales_name = $this->input->get('sales_name');
        $data['result'] = $this->m_commission->check_invoice_user ($param);
        foreach ($result as $result){
        $table = '<div>'.$result->INVOICEDATE.'</div>';
        }
        $tables[] = $table;
    }
    $data['tables'] = $tables;
    $data['team'] = $this->m_user->get_team();
    $this->load->view('v_header');
    $this->load->view('v_test', $data);
    $this->load->view('v_footer');
$table='';
$tables[]=array();
$result=array();
$param=新的stdClass();
如果(sizeof($\u GET)>0){
$param->date_from=$this->input->get('date_from');
$param->date_to=$this->input->get('date_to');
$param->sales_name=$this->input->get('sales_name');
$data['result']=$this->m_commission->check_invoice_user($param);
foreach($result作为$result){
$table='.$result->INVOICEDATE';
}
$tables[]=$table;
}
$data['tables']=$tables;
$data['team']=$this->m_user->get_team();
$this->load->view('v_header');
$this->load->view('v_test',$data);
$this->load->view('v_footer');
我的模型我已检查过查询它已在运行。

第一眼(echo
$table
不是
$tables
):

第一眼(echo
$table
不是
$tables
):

仍然显示错误“数组到字符串转换”和“为foreach()提供的参数无效”

这是我的模型

function check_invoice_user($param){
    $result = array();
    $this->db->select("*");
    $this->db->from("bsm_salesinvoiceheader bh");
    $this->db->join("bsm_customerpayment bsmc", "bsmc.INVOICENUMBER = bh.INVOICENUMBER", 'LEFT');
    $this->db->join("bsm_salesinvoicelines bsms", "bsms.INVOICENUMBER = bh.INVOICENUMBER", 'LEFT');
    $this->db->like("bh.ADDITIONALFIELD_2", $param->sales_name, 'BOTH');
    $this->db->or_like("bh.ADDITIONALFIELD_5", $param->sales_name, 'BOTH');
    $this->db->or_like("bh.ADDITIONALFIELD_8", $param->sales_name, 'BOTH');
    $this->db->where("bh.INVOICEDATE >= ",$param->date_from);
    $this->db->where("bh.INVOICEDATE <= ",$param->date_to);
    $this->db->where("bsmc.APPLIEDDATE >= ",$param->date_from);
    $this->db->where("bsmc.APPLIEDDATE <= ",$param->date_to);
    $this->db->order_by("bh.INVOICEDATE", 'ASC');

    $query = $this->db->get();
    echo $this->db->last_query();
    if ($query->num_rows() > 0) {
        $result = $query->num_rows();
    }
    return $result;

}
功能检查\u发票\u用户($param){
$result=array();
$this->db->select(“*”);
$this->db->from(“bsm_salesinvoiceheader bh”);
$this->db->join(“bsm_客户付款bsmc”,“bsmc.INVOICENUMBER=bh.INVOICENUMBER”,“左”);
$this->db->join(“bsm_salesinvoicelines bsms”,“bsms.INVOICENUMBER=bh.INVOICENUMBER”,“左”);
$this->db->like(“bh.ADDITIONALFIELD_2”,$param->sales_name,'BOTH');
$this->db->or_like(“bh.ADDITIONALFIELD_5”,$param->sales_name,'BOTH');
$this->db->or_like(“bh.ADDITIONALFIELD_8“,$param->sales_name,'BOTH');
$this->db->where(“bh.INVOICEDATE>=”,$param->date\u from);
$this->db->where(“bh.INVOICEDATE=”,$param->date\u from);
$this->db->where(“bsmc.APPLIEDDATE仍然显示错误“数组到字符串转换”和显示“为foreach()提供的参数无效”

这是我的模型

function check_invoice_user($param){
    $result = array();
    $this->db->select("*");
    $this->db->from("bsm_salesinvoiceheader bh");
    $this->db->join("bsm_customerpayment bsmc", "bsmc.INVOICENUMBER = bh.INVOICENUMBER", 'LEFT');
    $this->db->join("bsm_salesinvoicelines bsms", "bsms.INVOICENUMBER = bh.INVOICENUMBER", 'LEFT');
    $this->db->like("bh.ADDITIONALFIELD_2", $param->sales_name, 'BOTH');
    $this->db->or_like("bh.ADDITIONALFIELD_5", $param->sales_name, 'BOTH');
    $this->db->or_like("bh.ADDITIONALFIELD_8", $param->sales_name, 'BOTH');
    $this->db->where("bh.INVOICEDATE >= ",$param->date_from);
    $this->db->where("bh.INVOICEDATE <= ",$param->date_to);
    $this->db->where("bsmc.APPLIEDDATE >= ",$param->date_from);
    $this->db->where("bsmc.APPLIEDDATE <= ",$param->date_to);
    $this->db->order_by("bh.INVOICEDATE", 'ASC');

    $query = $this->db->get();
    echo $this->db->last_query();
    if ($query->num_rows() > 0) {
        $result = $query->num_rows();
    }
    return $result;

}
功能检查\u发票\u用户($param){
$result=array();
$this->db->select(“*”);
$this->db->from(“bsm_salesinvoiceheader bh”);
$this->db->join(“bsm_客户付款bsmc”,“bsmc.INVOICENUMBER=bh.INVOICENUMBER”,“左”);
$this->db->join(“bsm_salesinvoicelines bsms”,“bsms.INVOICENUMBER=bh.INVOICENUMBER”,“左”);
$this->db->like(“bh.ADDITIONALFIELD_2”,$param->sales_name,'BOTH');
$this->db->or_like(“bh.ADDITIONALFIELD_5”,$param->sales_name,'BOTH');
$this->db->or_like(“bh.ADDITIONALFIELD_8“,$param->sales_name,'BOTH');
$this->db->where(“bh.INVOICEDATE>=”,$param->date\u from);
$this->db->where(“bh.INVOICEDATE=”,$param->date\u from);
$this->db->where(“bsmc.APPLIEDDATE视图:


实际上它仍然是一个数组。 试试这个:

<?php 
print_r($tables);
    foreach($tables as $table){
        echo $table['your_column_name'];
        //print_r($table);
    }
?>

查看:

<?php 
    foreach($tables as $table){
        echo $table;
    }
?>

实际上它仍然是一个数组。 试试这个:

<?php 
print_r($tables);
    foreach($tables as $table){
        echo $table['your_column_name'];
        //print_r($table);
    }
?>

1

遇到一个PHP错误

严重性:警告

消息:为foreach()提供的参数无效

文件名:controllers/commission.php

行号:334

回溯:

文件: C:\xampp\htdocs\sales\u commission\application\controllers\commission.php 行:334函数:\u错误\u处理程序

文件:C:\xampp\htdocs\sales\u commission\index.php行:292函数: 需要一次

二,

遇到一个PHP错误

严重性:通知

消息:数组到字符串转换

文件名:views/v_test.php

电话号码:21

回溯:

文件:C:\xampp\htdocs\sales\u commission\application\views\v\u test.php 行:21函数:\u错误\u处理程序

文件: C:\xampp\htdocs\sales\u commission\application\controllers\commission.php 行:349功能:视图

文件:C:\xampp\htdocs\sales\u commission\index.php行:292函数: 需要一次

一,

遇到一个PHP错误

严重性:警告

消息:为foreach()提供的参数无效

文件名:controllers/commission.php

行号:334

回溯:

文件: C:\xampp\htdocs\sales\u commission\application\controllers\commission.php 行:334函数:\u错误\u处理程序

文件:C:\xampp\htdocs\sales\u commission\index.php行:292函数: 需要一次

二,

遇到一个PHP错误

严重性:通知

消息:数组到字符串转换

文件名:views/v_test.php

电话号码:21

回溯:

文件:C:\xampp\htdocs\sales\u commission\application\views\v\u test.php 行:21函数:\u错误\u处理程序

文件: C:\xampp\htdocs\sales\u commission\application\controllers\commission.php 行:349功能:视图

文件:C:\xampp\htdocs\sales\u commission\index.php行:292函数: 需要一次


请看我的答案。不客气。请花一分钟接受答案或/和投票。谢谢。确切的错误是什么,在哪一行。请看我的答案。不客气。请花一分钟接受答案或/和投票。谢谢。我们的代码是什么在控制器中的第334行和视图中的第21行进行ind?第334行是foreach($results as$result){…第21行是echo$table我们在控制器中的第334行和视图中的第21行找到了什么代码?第334行是foreach($results as$result){…第21行是echo$table哪一个?print\r($tables);-->如果是,则必须检查数据库查询。哪一个?打印($tables);-->如果是,则必须检查数据库查询。
<?php 
    foreach($tables as $table){
        echo $table;
    }
?>
<?php 
print_r($tables);
    foreach($tables as $table){
        echo $table['your_column_name'];
        //print_r($table);
    }
?>