codeigniter:从控制器传递数组到视图

Ira*_*kli 2 php arrays controller codeigniter view

我有CodeIgniter问题.如何从控制器传递数组到视图?这是我的代码不起作用:

控制器:

$data_part13['header3_item'][] = array('title' => 'first image 1' , 'img' => 'https://encrypted-tbn0.google.com/images?q=tbn:ANd9GcQoshslL3aMNzG50708domqPSA4ouPjk_wA7jCpVRUH3k8zVdn9' );

$this->load->view('part_1_3', $data_part13);
Run Code Online (Sandbox Code Playgroud)

并查看:

<div id="header3">
    <div id="header3-inner">
        <?php
        if (isset($header3_item)){
            foreach ($header3_item as $key) {
        ?>
                <div class="header3-item">
                    <img alt="<?php echo($key->title); ?>" src="<?php echo($key->img); ?>"/>
                </div>
        <?php
            }
        }
        ?>
    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

小智 6

你做得对(有点).您将一个数组传递给视图,但问题是您在视图中使用了一个对象.你应该做这样的事情:

$data_part13['header3_item'][] = (object) array('title' => 'first image 1' , 'img' => 'https://encrypted-tbn0.google.com/images?q=tbn:ANd9GcQoshslL3aMNzG50708domqPSA4ouPjk_wA7jCpVRUH3k8zVdn9' );

$this->load->view('part_1_3', $data_part13);
Run Code Online (Sandbox Code Playgroud)

视图部分可以保持不变.

  • 好吧,将对象视为箭头,将数组视为砖块.它们都是由原子制成的,但它们看起来不同.您可以使用` - >`(箭头)和带有`['..']`(砖)的数组访问一个对象,但是您不能**通过数组调用访问对象数据. (4认同)