我该如何解决"Object of class CI_Table could not be converted to string"?
How can I solve "Object of class CI_Table could not be converted to string"?
我是 CI 的新手,我按照网站上的教程进行操作,然后遇到了这个错误。这是我的查看代码:
$data = array('table_open' => '<table class = "table-bordered">');
echo $this->table->set_template($data);
$col1 = array('data' => 'No');
$col2 = array('class' => 'col-md-4', 'data' => 'Agenda');
$col3 = array('class' => 'col-md-2', 'data' => 'Category');
$col4 = array('class' => 'col-md-2', 'data' => 'Date');
$option = array('class' => 'col-md-4', 'data' => 'Option');
echo $this->table->set_heading($col1, $col2, $col3, $col4, $option);
// echo $this->table->set_heading('No', 'Agenda', 'Category', 'Date', 'Option');
$no = 1;
if($agenda > 0) {
foreach($agenda as $ag) {
$item = $this->table->add_row($no++, $ag->agenda, $ag->agenda_cat, $ag->due_date,
anchor('agenda/edit' . $ag->id_agenda, 'Edit', array('class' => 'btn btn-info col-md-offset-1')) . " " .
anchor('agenda/delete' . $ag->id_agenda, 'Delete', array('class' => 'btn btn-danger'))
);
}
echo $item;
}
echo $this->table->generate();
table->set_heading()
和 table->add_rows()
总是出错。
对于代码 echo $this->table->set_template($data);
,它始终给出“1”作为输出。有人可以帮忙吗?
您的答案:
删除所有 echo
除了 echo $this->table->generate();
这一行。
错误原因:
set_template
函数 returns 真或假。如果你回应它,它会显示 1 因为它返回 true。
从这一行中删除 echo
echo $this->table->set_heading($col1, $col2, $col3, $col4, $option);
它将显示该错误消息。
set_heading
函数 returns object.You 无法回显对象。删除 echo
或尝试 print_r
或 var_dump
该函数。
出于同样的原因,您不能使用 echo $item;
add_row
函数 returns 对象,并且您将其分配给 $item 并且您不能回显对象。
在控制器中加载库
$this->load->library('table');
或Config/autoload.php
$autoload['libraries'] = array('table');
set_heading
函数总是 returns object.So 没用 echo
所以你的代码(删除echo
)
<?php
$data = array(
'table_open' => '<table class="table-bordered">');
$this->table->set_template($data);
$col1 = array('data' => 'No');
$col2 = array('class' => 'col-md-4', 'data' => 'Agenda');
$col3 = array('class' => 'col-md-2', 'data' => 'Category');
$col4 = array('class' => 'col-md-2', 'data' => 'Date');
$option = array('class' => 'col-md-4', 'data' => 'Option');
$this->table->set_heading($col1, $col2, $col3, $col4, $option);
// echo $this->table->set_heading('No', 'Agenda', 'Category', 'Date', 'Option');
$no = 0;
if(empty($agenda))
{
foreach($agenda as $ag)
{
$this->table->add_row($no++, $ag['agenda'], $ag['agenda_cat'], $ag['due_date'],
anchor('agenda/edit' . $ag['id_agenda'], 'Edit', array('class' => 'btn btn-info col-md-offset-1')) . " " .
anchor('agenda/delete' . $ag['id_agenda'], 'Delete', array('class' => 'btn btn-danger')));
}
}
else
{
}
我是 CI 的新手,我按照网站上的教程进行操作,然后遇到了这个错误。这是我的查看代码:
$data = array('table_open' => '<table class = "table-bordered">');
echo $this->table->set_template($data);
$col1 = array('data' => 'No');
$col2 = array('class' => 'col-md-4', 'data' => 'Agenda');
$col3 = array('class' => 'col-md-2', 'data' => 'Category');
$col4 = array('class' => 'col-md-2', 'data' => 'Date');
$option = array('class' => 'col-md-4', 'data' => 'Option');
echo $this->table->set_heading($col1, $col2, $col3, $col4, $option);
// echo $this->table->set_heading('No', 'Agenda', 'Category', 'Date', 'Option');
$no = 1;
if($agenda > 0) {
foreach($agenda as $ag) {
$item = $this->table->add_row($no++, $ag->agenda, $ag->agenda_cat, $ag->due_date,
anchor('agenda/edit' . $ag->id_agenda, 'Edit', array('class' => 'btn btn-info col-md-offset-1')) . " " .
anchor('agenda/delete' . $ag->id_agenda, 'Delete', array('class' => 'btn btn-danger'))
);
}
echo $item;
}
echo $this->table->generate();
table->set_heading()
和 table->add_rows()
总是出错。
对于代码 echo $this->table->set_template($data);
,它始终给出“1”作为输出。有人可以帮忙吗?
您的答案:
删除所有 echo
除了 echo $this->table->generate();
这一行。
错误原因:
set_template
函数 returns 真或假。如果你回应它,它会显示 1 因为它返回 true。
从这一行中删除 echo
echo $this->table->set_heading($col1, $col2, $col3, $col4, $option);
它将显示该错误消息。
set_heading
函数 returns object.You 无法回显对象。删除 echo
或尝试 print_r
或 var_dump
该函数。
出于同样的原因,您不能使用 echo $item;
add_row
函数 returns 对象,并且您将其分配给 $item 并且您不能回显对象。
在控制器中加载库
$this->load->library('table');
或Config/autoload.php
$autoload['libraries'] = array('table');
set_heading
函数总是 returns object.So 没用 echo
所以你的代码(删除echo
)
<?php
$data = array(
'table_open' => '<table class="table-bordered">');
$this->table->set_template($data);
$col1 = array('data' => 'No');
$col2 = array('class' => 'col-md-4', 'data' => 'Agenda');
$col3 = array('class' => 'col-md-2', 'data' => 'Category');
$col4 = array('class' => 'col-md-2', 'data' => 'Date');
$option = array('class' => 'col-md-4', 'data' => 'Option');
$this->table->set_heading($col1, $col2, $col3, $col4, $option);
// echo $this->table->set_heading('No', 'Agenda', 'Category', 'Date', 'Option');
$no = 0;
if(empty($agenda))
{
foreach($agenda as $ag)
{
$this->table->add_row($no++, $ag['agenda'], $ag['agenda_cat'], $ag['due_date'],
anchor('agenda/edit' . $ag['id_agenda'], 'Edit', array('class' => 'btn btn-info col-md-offset-1')) . " " .
anchor('agenda/delete' . $ag['id_agenda'], 'Delete', array('class' => 'btn btn-danger')));
}
}
else
{
}