布局

布局是一种特殊的视图,代表多个视图的公共部分。例如,大多数的web应用共享相同的页头和页尾,每个视图中重复着相同的页头和页尾,导致页头和页尾严重冗余,一旦公共部分稍微修改,则需要修改所有视图相对应位置都要修改一遍,严重影响工作效率。更好的方式就是将公共部分放到一个布局中,渲染内容视图后在合适的地方嵌入到布局中。

启用布局:

  1. Star_Layout::startMvc(array(
  2. "base_path" => APPLICATION_PATH . "/layouts",
  3. "script_path" => "default",
  4. ));

布局文件 application/layouts/default/layout.phtml,布局内容:

  1. <!DOCTYPE html
  2. PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  3. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  4. <html>
  5. <head>
  6. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  7. <title><?php echo $this->title;?></title>
  8. <?php echo $this->loadCss();?>
  9. </head>
  10. <body>
  11. <div class="heaer">...</div>
  12. <?php
  13. //视图内容
  14. echo $this->layout->content;
  15. ?>
  16. <div class="footer">..</div>
  17. <?php $this->loadJs();?>
  18. </body>
  19. </html>