文档章节

NO.24 ZenTaoPHP框架提供的DAO功能

炒蚕豆吃蹦豆
 炒蚕豆吃蹦豆
发布于 2012/09/25 16:24
字数 380
阅读 52
收藏 1

禅道并没有试着去实现ORM或者ActiveRecord这样的概念。因为我们相信,框架要留给开发人员足够的自由发挥的空间,而不是所有的都要包办。所以框架里面提供了一个简单方便的数据库访问对象类:dao,让我们来看具体的写法。

更多禅道开源详情:http://www.zentao.net

一、查询语句:

$this->dao->select('*')->from('user')->where('account')->eq('wwccss')->fetch();
$this->dao->select('*')->from('user')->where('id')->gt(10)->andWhere('age')->lt(20)->orderBy('id desc')->limit('1,10')->fetchAll()

条件语句:

$this->dao->select('*')->from('user')->where('id')->gt(10)->beginIF($class == 'online')->andWhere('status')->eq('online')->fi()->fetchAll();

二、插入语句:

$user->account = 'wwccss';
$user->password = '123456';

$this->dao->insert('user')->data($user)->exec();
return $this->dao->lastInsertID();

或者:

$this->dao->insert('user')

  ->set('account')->eq($account)
  ->set('password')->eq($password)
  ->exec();

三、更新语句:

$this->dao->update('user')->data($user)->where('id')->eq($userid)->limit(1); 或者:

$this->dao->update('user')

  ->set('account')->eq($account)
  ->set('password')->eq($password)
  ->exec()

四、REPLACE语句

$this->dao->replace('user')->data($user)->exec();  

五、删除语句:

$this->dao->delete()->from('user')->where('id')->eq($userid);

六、左连接

$this->dao->select('t1.*, t2.*')->from('user')->alias('t1')->leftJoin('userGroup')->alias('t2')->on('t1.account = t2.account')->fetchAll();

六、其他便利的方法:

$this->dao->findByAccount($account)->from('user')->fetch(); // 魔术方法,按照account进行查询。
$this->dao->select('*')->from('user')->fetchAll('account');     // 返回的结果中,以account为key。
$this->dao->select('account, realname')->from('user')->fetchPairs();     // 返回account=>realname的键值对。
$this->dao->select('class, account, realname')->from('user')->fetchGroup('class');     // 按照所属的class进行分组。

更加具体的例子,大家可以参考zentaopms中的代码。

© 著作权归作者所有

炒蚕豆吃蹦豆
粉丝 164
博文 172
码字总数 133148
作品 0
青岛
私信 提问
ZenTaoPHP框架介绍

一、什么是ZenTaoPHP框架 (禅道地址) ZenTaoPHP框架是由禅道项目管理软件开发团队开发的一款轻量级的PHP开发框架,它主要的特点是: 1.1 代码简单 ZenTaoPHP框架核心只有四个文件,分别为调...

炒蚕豆吃蹦豆
2012/08/22
856
0
NO.14 禅道项目管理软件ZenTaoPHP框架安装

上一篇分享了ZenTaoPHP框架系统要求,今儿就给大家分享下ZenTaoPHP框架安装。 更多禅道开源详情:http://www.zentao.net/ 一、安装apache, mysql, php的运行环境 首先要确认你的机器上面已经...

炒蚕豆吃蹦豆
2012/09/11
0
0
ZenTaoPHP 框架发布 3.0 正式版

关于zentaoPHP框架 zentaoPHP是易软天创自己开发的一款PHP框架,主要目的是为了满足我们自身的产品研发需求。和其他的框架相比,zentaoPHP更注重框架的可维护性、性能良好、对开发人员的友好...

开源春哥
2016/08/18
4.1K
28
ZenTaoPHP框架发布1.3正式版

ZenTaoPHP框架发布1.3正式版本。 下载地址: tar格式: http://zentaophp.googlecode.com/files/ZenTaoPHP.1.3.tar.gz pear格式:http://zentaophp.googlecode.com/files/ZenTaoPHP-1.3.0.t......

开源春哥
2010/01/04
521
1
禅道项目管理软件的ZenTaoPHP授权协议

  ZenTaoPHP框架最开始的授权协议是LGPL。LGPL协议对大家的使用还是有一些限制的,尤其是对一些商用。所以我们做了一个决定,从2.1版本开始,彻底将ZenTaoPHP代码的版权捐献出来,以publi...

炒蚕豆吃蹦豆
2012/08/24
770
1

没有更多内容

加载失败,请刷新页面

加载更多

lombok的一个踩坑记录

lombok的类如下所示: package com.divx.service.model.task;import com.divx.service.model.BaseTypeMedia;import lombok.Data;/** * @author wuzhilang * @Title: QuestionResult ......

无知的小狼
27分钟前
2
0
如何使用markdown

我没有导入相应的包 这个用的还是有些问题 而且显示的时候格式问题还没解决 <div class="blog_editor" style="margin: 0 auto;width:60%;height:1000px;background-color: white;"> <div s......

南桥北木
30分钟前
4
0
纯手写SpringBoot框架之注解方式启动SpringMVC容器

使用Java语言创建Tomcat容器,并且通过Tomcat执行Servlet,接下来,将会使用Java语言在SpringBoot创建内置Tomcat,使用注解方式启动SpringMVC容器。 代码实现。 1.pom.xml文件,需要依赖的jar...

Java老王
31分钟前
2
0
Presto查询引擎简单分析

Hive查询流程分析 各个组件的作用 UI(user interface)(用户接口):提交数据操作的窗口 Driver(引擎):负责接收数据操作,实现了会话句柄,并提供基于JDBC / ODBC的execute和fetch API Metas...

MobService
33分钟前
1
0
《软件架构的10个常见模式》,看完真心觉得不错

作者:半吊子全栈工匠原文链接:https://blog.csdn.net/wireless_com/article/details/89008061 企业规模的软件系统该如何设计呢?在开始写代码之前,我们需要选择一个合适的架构,这个架构...

Java干货分享
44分钟前
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部