【问题标题】:CodeIgniter: load view in foreach loopCodeIgniter:在 foreach 循环中加载视图
【发布时间】:2015-04-04 13:27:02
【问题描述】:

我的控制器中有这段代码:

$array = $this->get_latest_posts(5, 0);
foreach($array as $row){
  $this->load->view('blog_page', $row);
}

在我的模型中是这样的:

// Some SQL query here;

$array = $query->result_array();
return $array;

但视图根本无法加载。问题可能出在哪里?

感谢您的回答!

【问题讨论】:

    标签: php codeigniter model-view-controller


    【解决方案1】:

    你应该在视图中使用循环并在循环中编写html代码。应该是这样的:

    $array['all_posts'] = $this->get_latest_posts(5, 0);
    $this->load->view('blog_page', $array);
    

    在你的视图文件中

    <ul>
    
    <?php     foreach($all_posts as $post) { ?>
          <li><?php echo $post->name; ?></li>//assuming the name is attribute of post.
    <?php  } ?>
    </ul>
    

    【讨论】:

      【解决方案2】:

      试试这个:

      $array = $this->get_latest_posts(5, 0);
      

      然后将此数组传递给视图,

      $this->load->view('blog_page', $array);
      

      在您查看页面中,您可以使用该数组。

      【讨论】:

        【解决方案3】:

        对于在尝试将另一个视图作为 for 循环内的组件加载时仍然遇到此问题的任何人...

        确保在将变量传递给视图之前传递包裹在数组中的变量。

        $array = $this->get_latest_posts(5, 0);
        $data['row'] = $row;
        foreach($array as $row){
          $this->load->view('blog_page', $data);
        }
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2013-01-19
          • 2016-02-21
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多