codeigniter: передать массив из контроллера для просмотра - PullRequest
2 голосов
/ 06 января 2012

У меня есть вопрос 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);

и просмотр:

<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>

Ответы [ 2 ]

6 голосов
/ 06 января 2012

Вы сделали это правильно (вроде). Вы передали массив представлению, но ваша проблема заключалась в том, что вы использовали объект в представлении. Вы должны вместо этого сделать что-то вроде этого:

$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);

Часть обзора может оставаться прежней.

2 голосов
/ 06 января 2012

Вы передаете это правильно, но вы не получаете доступ к нему правильно из представления.Вместо $key->title необходимо использовать $key['title'];

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...