相關(guān)關(guān)鍵詞
關(guān)于我們
最新文章
- PHP中opcode緩存簡(jiǎn)單用法分析
- thinkPHP控制器變量在模板中的顯示方法示例
- PHP move_uploaded_file() 函數(shù)(將上傳的文件移動(dòng)到新位置)
- dirname(__FILE__)的含義和應(yīng)用說明
- thinkPHP5框架實(shí)現(xiàn)分頁(yè)查詢功能的方法示例
- PHP中單雙號(hào)與變量
- PHP獲得當(dāng)日零點(diǎn)時(shí)間戳的方法分析
- Laravel ORM對(duì)Model::find方法進(jìn)行緩存示例詳解
- PHP讀寫文件高并發(fā)處理操作實(shí)例詳解
- 【CLI】利用Curl下載文件實(shí)時(shí)進(jìn)度條顯示的實(shí)現(xiàn)
CakePHP框架Model函數(shù)定義方法示例
本文實(shí)例講述了CakePHP框架Model函數(shù)定義方法。分享給大家供大家參考,具體如下:
在CakePHP中,MVC的架構(gòu)是清晰的,而在實(shí)際做項(xiàng)目中,我發(fā)現(xiàn)仍然有很多人喜歡在Controller中堆砌函數(shù),這樣做也未嘗不可,但是,作為一個(gè)百萬(wàn)行級(jí)的大項(xiàng)目來(lái)說,這種違背MVC思想的做法雖然可能暫時(shí)給程序結(jié)構(gòu)帶來(lái)便利,但從長(zhǎng)遠(yuǎn)來(lái)看,是萬(wàn)萬(wàn)不可取的!
我們應(yīng)該將系統(tǒng)常用到的某些函數(shù)定義在Model中,特別是純粹的的數(shù)據(jù)處理函數(shù)和數(shù)據(jù)查詢函數(shù):
譬如,在Blog中像下面這樣的條件查詢:
/* * * Blog 根據(jù)條件得到相應(yīng)字段結(jié)果集 * * @Param array conditions * array fields * @Return array * */ function getBlogsByCon($conditions = array(),$fields = null){ return $this->find('all',array( 'conditions'=>ife(count($conditions) > 0, am(array('`Blog`.`status` = 1'),$conditions), array('`Blog`.`status` = 1')), 'fields'=>$fields, 'order'=>'`Blog`.`created` DESC', 'page'=>1, 'recursive'=>0)); }