本文實例講述了CI框架整合widget(頁面格局)的方法。分享給大家供大家參考,具體如下:
在WEB開發過程中,我們免不了要輸出視圖文件,而通常視圖文件又一般都少不了頭部、左側欄以及底部這些公共元素。
如何讓整個項目開發在涉及視圖套用時引入敏捷的思維,提高效率呢?就不得不提一下widget。承然你也大可以使用HMVC模型。
這裡僅介紹下widget如何結合入CI框架中:
1、在類文件MY_Controller.php中添加調用方法:
/* * 如果$name存在則調用widget類及widget方法 *@param string $name */ protected function widget ($name = '') { if (isset($name) && $name != '') { require_once BASE_WIDGET.$name.'.php'; } }
2、定義widget類文件:
<?php /*------------ widget.php 組件包含自己的控制器,視圖,模型(可以共用普通model) *用來實現各頁面都有的公共部分 @author crystal 20120106 --------------*/ class Widget extends MY_Controller { private function __construct() { parent::MY_Controller(); } /*** 獲取當前類名*/ private static function _getClass() { return __CLASS__; } public static function left() { $class = self::_getClass(); $data['userinfo'] = MY_Controller::_getUserCookieInfo(); $this->load->view('com/left.php',$data); } } ?>
3、在視圖文件中調用(在相應的控制器中應該先調用父類控制中的widget方法):
<!--left sider --> <div> <?php Widget::left();?> </div> ... <!--/left sider -->
更多關於CodeIgniter相關內容感興趣的讀者可查看本站專題:《codeigniter入門教程》、《CI(CodeIgniter)框架進階教程》、《php優秀開發框架總結》、《ThinkPHP入門教程》、《ThinkPHP常用方法總結》、《Zend FrameWork框架入門教程》、《php面向對象程序設計入門教程》、《php+mysql數據庫操作入門教程》及《php常見數據庫操作技巧匯總》
希望本文所述對大家基於CodeIgniter框架的PHP程序設計有所幫助。