【问题标题】:Codeigniter View, how to pass two variablesCodeigniter View,如何传递两个变量
【发布时间】:2014-06-21 17:56:38
【问题描述】:

我的问题有点不专业,但我是 CodeIgniter 的新手,到目前为止查看文档并没有找到答案。

假设我有 2 张桌子,一张用于产品,另一张用于特价。

我想在一个页面和同一个视图文件中查看两个表记录。

我以前用 smarty 来做,方法是分配每个数组并在模板中循环遍历它。

但在 CodeIgniter 中

如果我使用内置的模板引擎,它就像这样

$this->parser->parse('template', $data);

没有模板引擎是这样的

$this->load->view('template', $data);

在这两种情况下,它只将一个变量传递给视图文件。

如何传递多个变量。

谢谢。

【问题讨论】:

    标签: codeigniter


    【解决方案1】:

    看看this

    引用:

    $data = array(
                   'title' => 'My Title',
                   'heading' => 'My Heading',
                   'message' => 'My Message'
              );
    
    $this->load->view('blogview', $data);
    

    在视图端,您将能够访问以下变量:

    echo($title);            // 'My Title'
    echo($heading);          // 'My Heading'
    echo($message);          // 'My Message'
    

    希望这能给你一些进一步研究的线索。

    编辑#1(回复评论):

    $array1 = array('a', 'b', 'c');
    $array2 = array('x', 'y', 'z');
    
    $data['view_array1'] = $array1;
    $data['view_array2'] = $array2;
    
    $this->load->view('blogview', $data);
    

    这将在视图中为您提供以下变量:

    $view_array1;    //  array('a', 'b', 'c')
    $view_array2;    //  array('x', 'y', 'z')
    

    【讨论】:

    • 感谢您的好回答,但这只是一个数组,我有 2 个数组来自不同的表。
    • 您仍然可以将这些数组分配给不同索引的单个变量。
    【解决方案2】:

    Controller中你可以像这样制作关联数组

    $data['Product'] = $product_array;
    $data['Special_Offer'] = $special_offer_array;
    
    $this->load->view('template', $data);
    

    视图中,您的变量将是 $Product 和 $Special_Offer

    【讨论】:

    • 非常感谢,所以我必须循环遍历每个“$data”数组元素,谢谢
    猜你喜欢
    • 1970-01-01
    • 2010-12-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-15
    • 2011-06-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多