Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/293.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php CodeIgniter致命错误:对非对象调用成员函数display_clients()_Php_Codeigniter - Fatal编程技术网

Php CodeIgniter致命错误:对非对象调用成员函数display_clients()

Php CodeIgniter致命错误:对非对象调用成员函数display_clients(),php,codeigniter,Php,Codeigniter,我正在写一个程序,它基本上是处理数据库的,但是我在一些功能上遇到了问题,这就是它应该做的 public function clist() { $this->load->model('list_model'); $fields = $this->list_model->listcli(); if ($fields === $this->list_model->listcli()) { $fieldl = $fields; $this->lo

我正在写一个程序,它基本上是处理数据库的,但是我在一些功能上遇到了问题,这就是它应该做的

public function clist() {
$this->load->model('list_model');
$fields = $this->list_model->listcli();
if ($fields === $this->list_model->listcli()) {
    $fieldl = $fields;
    $this->load->view('clientlist');
    $this->clientlist->display_clients($fieldl);
}

}
这将加载如下所示的模型:

}

然后运行模型函数
listcli
,这样它将列出客户端数据库中的所有字段,并将值放入
$fields
中,然后调用它
fieldl
并加载一个显示数据的视图,该视图如下所示:

<html>
<body>
<p> sup </p>
<?php

 function display_clients($fieldl)
 {

        ?>
        <html>
            <body>
            <p> sup2 </p>
                <ul>
                <?php
                foreach ($fieldl as $l) {
                ?>
                <li> 
                    <?php echo $l;?>
                </li>
                <?php
                }
    }
你能帮忙吗?谢谢你


(我知道以前有人问过这类问题,但它们总是针对手头的代码,因此对我没有帮助,我对CodeIgniter非常陌生,因此如果您能将任何答案保持相对简单,我将不胜感激)。

为什么您不能在控制器中准备列表,并通过
$data
数组将其传递给视图

$my_list = '<ul>';
foreach ($fieldl as $l) {
$my_list .= '<li>'.$l.'</li>';
}
$my_list .= '</ul>';

$data['my_list'] = $my_list;

然后在视图中,您访问
$data['my_list']
作为
$my_list
$data['foo']
作为
$foo
等。

我需要使用第二个参数将数据传递到视图中,而不是我自己的临时解决方案,CI接受一个对象作为CI_Loader::View()的第二个参数

你不能只在视图中回显变量,它们必须被加载,我现在已经解决了,别担心。请参阅上面的编辑。我觉得我的例子很清楚,抱歉。
$this->clientlist->display_clients($fieldl);
$my_list = '<ul>';
foreach ($fieldl as $l) {
$my_list .= '<li>'.$l.'</li>';
}
$my_list .= '</ul>';

$data['my_list'] = $my_list;
$this->load->view('my_view',$data);