Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.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中加载数据_Php_Arrays_Codeigniter_Codeigniter 2 - Fatal编程技术网

Php 在CodeIgniter中加载数据

Php 在CodeIgniter中加载数据,php,arrays,codeigniter,codeigniter-2,Php,Arrays,Codeigniter,Codeigniter 2,我在CodeIgniter中只得到一个具有此代码的特色项目。我想得到5个不同的特色项目 我的模型: // GET THE FEATURED PRODUCTS function getMainFeature(){ $data = array(); $this->db->select("id, a_title, a_description, a_image"); $this->db->where('a_featu

我在CodeIgniter中只得到一个具有此代码的特色项目。我想得到5个不同的特色项目

我的模型:

    // GET THE FEATURED PRODUCTS
    function getMainFeature(){
        $data = array();
        $this->db->select("id, a_title, a_description, a_image");
        $this->db->where('a_featured', true);
        $this->db->where('a_status', 'active');
        $this->db->order_by("rand()");
        $this->db->limit(5);

        $Q = $this->db->get('articles');

        if($Q->num_rows() >0){
            foreach($Q->result_array() as $row){
                $data = array(
                    "id" => $row['id'],
                    "a_name" => $row['a_title'],
                    "a_description" => $row['a_description'],
                    "a_image" => $row['a_image']
                );
            }
        }
        $Q->free_result();
        return $data;
    }
我的控制器:

function index(){


    //get featured
    $data['mainfeature'] = $this->MArticles->getMainFeature();
    $data['main'] = 'template/main/home';
    //load data and template
    $this->load->vars($data);
    $this->load->view('template/main/main_template');
}
我的看法:

<li>
<?php 
foreach($mainfeature as $feat){

echo "<img src='".$mainfeature['a_image']."' border='0' align='left' width='320' height='320'/> \n";

}
?>
</li>
原因是

    if($Q->num_rows() >0){
        foreach($Q->result_array() as $row){
            $data = array(         //<-----------HERE
                "id" => $row['id'],
                "a_name" => $row['a_title'],
                "a_description" => $row['a_description'],
                "a_image" => $row['a_image']
            );
        }
    }
这样,您就可以将$data作为查询的所有结果的数组返回,而不是重新分配它,只得到一个结果

    $data = array();        //declare an empty array as $data outside the loop
    if($Q->num_rows() >0){
        foreach($Q->result_array() as $row){
            $data[] = array(          //using square brackets will push new elements onto the array $data
                "id" => $row['id'],
                "a_name" => $row['a_title'],
                "a_description" => $row['a_description'],
                "a_image" => $row['a_image']
            );
        }
    }