亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費注冊 查看新帖 |

Chinaunix

  平臺 論壇 博客 文庫
最近訪問板塊 發(fā)新帖
查看: 2237 | 回復(fù): 1
打印 上一主題 下一主題

CI框架與widget(頁面布局) [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報告]
發(fā)表于 2012-02-13 16:43 |只看該作者 |倒序瀏覽
CI框架與widget(頁面布局)






    在WEB開發(fā)過程中,我們免不了要輸出視圖文件,而通常視圖文件又一般都少不了頭部、左側(cè)欄以及底部這些公共元素。

    如何讓整個項目開發(fā)在涉及視圖套用時引入敏捷的思維,提高效率呢?就不得不提一下widget。承然你也大可以使用HMVC模型。
   
    這里僅介紹下widget如何結(jié)合入CI框架中:
   
    1、在類文件MY_Controller.php中添加調(diào)用方法:



Php代碼
  1. 1./*  
  2. 2. * 如果$name存在則調(diào)用widget類及widget方法  
  3. 3. *@param string $name   
  4. 4.*/  
  5. 5. protected function widget ($name = '')   
  6. 6. {   
  7. 7.     if (isset($name) && $name != '')   
  8. 8.     {   
  9. 9.         require_once BASE_WIDGET.$name.'.php';   
  10. 10.     }   
  11. 11. }  
  12.    /*
  13.     * 如果$name存在則調(diào)用widget類及widget方法
  14.     *@param string $name
  15.    */
  16.     protected function widget ($name = '')
  17.     {
  18.         if (isset($name) && $name != '')
  19.         {
  20.             require_once BASE_WIDGET.$name.'.php';
  21.         }
  22.     }
復(fù)制代碼
2、定義widget類文件:


Php代碼
  1. 1.<?php   
  2. 2./*-------------------------------------------------------------------------------  
  3. 3.widget.php 組件包含自己的控制器,視圖,模型(可以共用普通model)  
  4. 4.*用來實現(xiàn)各頁面都有的公共部分  
  5. 5.@author crystal 20120106  
  6. 6.---------------------------------------------------------------------------------*/  
  7. 7.class Widget extends MY_Controller   
  8. 8.{   
  9. 9.    private function __construct()   
  10. 10.    {   
  11. 11.        parent::MY_Controller();   
  12. 12.    }   
  13. 13.  
  14. 14.    /*** 獲取當(dāng)前類名*/  
  15. 15.    private static function _getClass()   
  16. 16.    {   
  17. 17.        return __CLASS__;   
  18. 18.    }   
  19. 19.      
  20. 20.    public static function left()   
  21. 21.    {   
  22. 22.        $class = self::_getClass();   
  23. 23.        $data['userinfo'] = MY_Controller::_getUserCookieInfo();   
  24. 24.        $this->load->view('com/left.php',$data);   
  25. 25.    }   
  26. 26.}   
  27. 27.?>  
  28. <?php
  29. /*-------------------------------------------------------------------------------
  30. widget.php 組件包含自己的控制器,視圖,模型(可以共用普通model)
  31. *用來實現(xiàn)各頁面都有的公共部分
  32. @author crystal 20120106
  33. ---------------------------------------------------------------------------------*/
  34. class Widget extends MY_Controller
  35. {
  36.     private function __construct()
  37.     {
  38.         parent::MY_Controller();
  39.     }

  40.     /*** 獲取當(dāng)前類名*/
  41.     private static function _getClass()
  42.     {
  43.         return __CLASS__;
  44.     }
  45.    
  46.     public static function left()
  47.     {
  48.         $class = self::_getClass();
  49.         $data['userinfo'] = MY_Controller::_getUserCookieInfo();
  50.         $this->load->view('com/left.php',$data);
  51.     }
  52. }
  53. ?>
復(fù)制代碼
3、在視圖文件中調(diào)用(在相應(yīng)的控制器中應(yīng)該先調(diào)用父類控制中的widget方法):


Php代碼
  1. 1.<!--left sider -->   
  2. 2.<div>   
  3. 3.<?php    Widget::left();?>   
  4. 4.</div>   
  5. 5....   
  6. 6.<!--/left sider -->  
復(fù)制代碼

論壇徽章:
0
2 [報告]
發(fā)表于 2012-02-13 16:43 |只看該作者
謝謝分享
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報專區(qū)
中國互聯(lián)網(wǎng)協(xié)會會員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP