Codeigniter处理控制器调用视图的最佳方法

时间:2016-09-16 02:08:33

标签: php codeigniter

我只是想知道这是否是添加碎片视图的好方法。

让我们说“header.php”就像这样

    <!DOCTYPE html>
<html>
  <head>
    <title>Bootstrap Admin Theme v3</title>
    some links..
  </head>
</html>

然后“body.php”就像这样

<!DOCTYPE html>
<html>
  <body>
    lots of stuff..
  </body>
</html>

最后“scripts.php”

<!DOCTYPE html>
<html>
  <body>
    some scripts..
  </body>
</html>

然后在我的“MyController.php”中

$this->load->view('header');
$this->load->view('body');
$this->load->view('scripts');

3 个答案:

答案 0 :(得分:1)

我找到的最佳方法是创建默认视图。

views > default_view.php

views > includes > header_view.php

views > includes > footer_view.php

views > information > contact_view.php

在该视图上

<?php

$this->load->view('includes/header_view');

$this->load->view($content_page);

$this->load->view('includes/footer_view');

?>

然后在控制器上以这种方式加载视图,您不必一直加载页眉和页脚视图。

遵循Codeigniter StyleGuide

文件名:Example.php

<?php

class Example extends CI_Controller {

public function index() {

   // Add any other variables

   $data['content_page'] = 'information/contact_view'; // This will be your content page example 

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

}

}

答案 1 :(得分:0)

有太多冗余标记,例如<html><body>尝试将其分开

的header.php

 <!DOCTYPE html>
 <html>
 <head>
  <title>Bootstrap Admin Theme v3</title>
  some links..
 </head>
<body>

body.php

    lots of stuff..

scripts.php或footer.php

    some scripts..
  </body>
</html>

答案 2 :(得分:0)

这不是好方法。除了在某些情况下(例如使用框架),文档应该只有一个声明和一对打开/关闭的html标记。 它可能是这样的:

的header.php

<!DOCTYPE html>
<html>
    <head>
        <title>Bootstrap Admin Theme v3</title>
        some links..
    </head>
    <body>

some_page.php

        <div class="container">
            <div class="row">
            //some stuff and forms here
            </div>
        </div>

footer.php

        <div class="footer">
        //&copy;2016
        </div>
    </body>
</html>