CakePHP框架Model函数定义方法示例


Posted in PHP onAugust 04, 2017

本文实例讲述了CakePHP框架Model函数定义方法。分享给大家供大家参考,具体如下:

在CakePHP中,MVC的架构是清晰的,而在实际做项目中,我发现仍然有很多人喜欢在Controller中堆砌函数,这样做也未尝不可,但是,作为一个百万行级的大项目来说,这种违背MVC思想的做法虽然可能暂时给程序结构带来便利,但从长远来看,是万万不可取的!

我们应该将系统常用到的某些函数定义在Model中,特别是纯粹的的数据处理函数和数据查询函数:

譬如,在Blog中像下面这样的条件查询:

/*
*
*  Blog 根据条件得到相应字段结果集
*
* @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));
}

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
我的论坛源代码(八)
Oct 09 PHP
sphinx增量索引的一个问题
Jun 14 PHP
laravel 4安装及入门图文教程
Oct 29 PHP
PHP队列用法实例
Nov 05 PHP
thinkphp使用literal防止模板标签被解析的方法
Nov 22 PHP
php通过正则表达式记取数据来读取xml的方法
Mar 09 PHP
PHP中new static()与new self()的比较
Aug 19 PHP
ThinkPHP 整合Bootstrap Ajax分页样式
Dec 23 PHP
为何说PHP引用是个坑,要慎用
Apr 02 PHP
PHP 二维array转换json的实例讲解
Aug 21 PHP
PHP生成二维码与识别二维码的方法详解【附源码下载】
Mar 07 PHP
PHP论坛实现积分系统的思路代码详解
Jun 01 PHP
CakePHP框架Model关联对象用法分析
Aug 04 #PHP
PHP实现将优酷土豆腾讯视频html地址转换成flash swf地址的方法
Aug 04 #PHP
Win10 下安装配置IIS + MySQL + nginx + php7.1.7
Aug 04 #PHP
php7安装yar扩展的方法详解
Aug 03 #PHP
ThinkPHP 3.2.3实现页面静态化功能的方法详解
Aug 03 #PHP
PHP7扩展开发教程之Hello World实现方法示例
Aug 03 #PHP
Kindeditor编辑器添加图片上传水印功能(php代码)
Aug 03 #PHP
You might like
php防止sql注入示例分析和几种常见攻击正则表达式
2014/01/12 PHP
php中的curl使用入门教程和常见用法实例
2014/04/10 PHP
Thinkphp3.2.3整合phpqrcode生成带logo的二维码
2016/07/21 PHP
php双层循环(九九乘法表)
2017/10/23 PHP
redis+php实现微博(一)注册与登录功能详解
2019/09/23 PHP
Laravel获取当前请求的控制器和方法以及中间件的例子
2019/10/11 PHP
JS对文本框值的判断示例
2014/03/10 Javascript
JS实现横向与竖向两个选项卡Tab联动的方法
2015/09/27 Javascript
Web Uploader文件上传插件使用详解
2016/05/10 Javascript
浅析JS操作DOM的一些常用方法
2016/05/13 Javascript
AngularJs Modules详解及示例代码
2016/09/01 Javascript
浅谈JavaScript的自动垃圾收集机制
2016/12/15 Javascript
浅析BootStrap中Modal(模态框)使用心得
2016/12/24 Javascript
浅谈JS函数节流防抖
2017/10/18 Javascript
浅谈Vue路由快照实现思路及其问题
2018/06/07 Javascript
vue3.0 CLI - 2.4 - 新组件 Forms.vue 中学习表单
2018/09/14 Javascript
vue 虚拟DOM的原理
2020/10/03 Javascript
创建与框架无关的JavaScript插件
2020/12/01 Javascript
[04:41]2014DOTA2国际邀请赛 Liquid顺利突围晋级正赛
2014/07/09 DOTA
python模块之re正则表达式详解
2017/02/03 Python
Python装饰器用法示例小结
2018/02/11 Python
Python中最大递归深度值的探讨
2019/03/05 Python
python中翻译功能translate模块实现方法
2020/12/17 Python
使用phonegap查找联系人的实现方法
2017/03/31 HTML / CSS
Fresh馥蕾诗英国官网:法国LVMH集团旗下高端天然护肤品牌
2018/11/01 全球购物
五好党支部事迹材料
2014/02/06 职场文书
校园安全演讲稿
2014/05/09 职场文书
优秀党支部书记事迹材料
2014/05/29 职场文书
2014超市收银员工作总结
2014/11/13 职场文书
幼儿园老师工作总结2015
2015/05/22 职场文书
小学数学教师研修感悟
2015/11/18 职场文书
素质教育学习心得体会
2016/01/19 职场文书
Go语言 go程释放操作(退出/销毁)
2021/04/30 Golang
OpenCV-Python 实现两张图片自动拼接成全景图
2021/06/11 Python
CPU不支持Windows11系统怎么办
2021/11/21 数码科技
vue如何清除浏览器历史栈
2022/05/25 Vue.js