У меня есть вопрос 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>
Вы сделали это правильно (вроде). Вы передали массив представлению, но ваша проблема заключалась в том, что вы использовали объект в представлении. Вы должны вместо этого сделать что-то вроде этого:
$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);
Часть обзора может оставаться прежней.
Вы передаете это правильно, но вы не получаете доступ к нему правильно из представления.Вместо $key->title необходимо использовать $key['title'];
$key->title
$key['title']