沃梦达 / 编程问答 / php问题 / 正文

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

codeigniter: pass array from controller to view(codeigniter:将数组从控制器传递到视图)

本文介绍了codeigniter:将数组从控制器传递到视图的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有 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-inner"><?php如果(isset($header3_item)){foreach ($header3_item 作为 $key) {?><div class="header3-item"><img alt="<?php echo($key->title); ?>"src="<?php echo($key->img); ?>"/>

<?php}}?>

解决方案

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

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

视图部分可以保持不变.

I have CodeIgniter question. How can I pass an array from controller to view? Here is my code that doesn't work:

controller:

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

and view:

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

解决方案

You did it correctly (kinda). You passed an array to the view, but your problem was that you were using an object in the view. You should have instead done something like this:

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

The view part can stay the same.

这篇关于codeigniter:将数组从控制器传递到视图的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:codeigniter:将数组从控制器传递到视图

基础教程推荐