位置: 编程技术 - 正文

Yii基于数组和对象的Model查询技巧实例详解(对数组描述正确的是)

编辑:rootadmin

推荐整理分享Yii基于数组和对象的Model查询技巧实例详解(对数组描述正确的是),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:对数组的定义,对数组使用sizeof,对数组的定义,对数组的理解,数组数对,对数组进行的两种基本操作,对数组进行的两种基本操作,对数组的理解,内容如对您有帮助,希望把文章链接给更多的朋友!

本文实例讲述了Yii基于数组和对象的Model查询技巧。分享给大家供大家参考,具体如下:

对于一个Model Post 有如下的4中查询方法,返回对象或者对象数组。

如果find 方法找到了一个满足查询条件的行,它将返回一个Post 实例,实例的属性含有数据表行中相应列的值。然后我们就可以像读取普通对象的属性那样读取载入的值,例如echo $post->title;。如果使用给定的查询条件在数据库中没有找到任何东西, find 方法将返回null。

调用find 时,我们使用$condition 和$params 指定查询条件。此处$condition 可以是SQL 语句中的WHERE 字符串,$params 则是一个参数数组,其中的值应绑定到$condation 中的占位符。例如:假设我们查询postID = 的数据

条件$condition 就是我们sql里的where部分,那参数怎么办呢,通过params传递,不过名字是加了":"的。

YII有个CDbCriteria类来构造查询,如果我们查询postId为的title,CdbCriteria是这样构造的

一种替代CDbCriteria 的方法是给find 方法传递一个数组。数组的键和值各自对应标准( criterion)的属性名和值,上面的例子可以重写为如下:

当然也适用于findAll()

当一个查询条件是关于按指定的值匹配几个列时,我们可以使用findByAttributes()。我们使$attributes 参数是一个以列名做索引的值的数组。findByAttributes 里的$attributes就是字段的名字.查询title为abc怎么查询呢?见下面

其它方法:

1、$admin=Admin::model()->findAll($condition,$params);

该方法是根据一个条件查询一个集合,如:2、$admin=Admin::model()->findAllByPk($postIDs,$condition,$params);findAllByPk($id,"name like ':name' and age=:age" ,array(':name'=>$name,'age'=>$age));该方法是根据主键查询一个集合,可以使用多个主键,如:3、$admin=Admin::model()->findAllByAttributes($attributes,$condition,$params);

该方法是根据条件查询一个集合,可以是多个条件,把条件放到数组里面,如:4、$admin=Admin::model()->findAllBySql($sql,$params);

该方法是根据SQL语句查询一个数组,如:

二、查询对像的方法

1、$admin=Admin::model()->findByPk($postID,$condition,$params);

根据主键查询出一个对象,如:2、$row=Admin::model()->find($condition,$params);

Yii基于数组和对象的Model查询技巧实例详解(对数组描述正确的是)

根据一个条件查询出一组数据,可能是多个,但是他只返回第一行数据,如:3、$admin=Admin::model()->findByAttributes($attributes,$condition,$params);

该方法是根据条件查询一组数据,可以是多个条件,把条件放到数组里面,他查询的也是第一条数据,如:4、$admin=Admin::model()->findBySql($sql,$params);

该方法是根据SQL语句查询一组数据,他查询的也是第一条数据,如:5、拼一个获得SQL的方法,在根据find查询出一个对象

三、查询个数,判断查询是否有结果

1、$n=Post::model()->count($condition,$params);

该方法是根据一个条件查询一个集合有多少条记录,返回一个int型数字,如2、$n=Post::model()->countBySql($sql,$params);

该方法是根据SQL语句查询一个集合有多少条记录,返回一个int型数字,如3、$exists=Post::model()->exists($condition,$params);该方法是根据一个条件查询查询得到的数组有没有数据,如果有数据返回一个true,否则没有找到

四、添加的方法

五、修改的方法

1、Post::model()->updateAll($attributes,$condition,$params);

2、Post::model()->updateByPk($pk,$attributes,$condition,$params);

$pk代表主键,可以是一个也可以是一个集合,$attributes代表是要修改的字段的集合,$condition代表条件,$params传入的值

3、Post::model()->updateCounters($counters,$condition,$params);

array('status'=>1)代表数据库中的admin表根据条件username='admin',查询出的所有结果status字段都自加1

六、删除的方法

1、Post::model()->deleteAll($condition,$params);

2、Post::model()->deleteByPk($pk,$condition,$params);

希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。

Yii中CGridView实现批量删除的方法 本文实例讲述了Yii中CGridView实现批量删除的方法。分享给大家供大家参考,具体如下:1.CGridView中的columns添加array('selectableRows'=2,'footer'='buttontype="button"on

Yii中实现处理前后台登录的新方法 本文实例讲述了Yii中实现处理前后台登录的新方法。分享给大家供大家参考,具体如下:因为最近在做一个项目涉及到前后台登录问题,我是把后台作

yii去掉必填项中星号的方法 本文实例讲述了yii去掉必填项中星号的方法。分享给大家供大家参考,具体如下:如何去掉必填项里的星号呢?先分析下代码实现:publicfunctionlabelEx($mod

标签: 对数组描述正确的是

本文链接地址:https://www.jiuchutong.com/biancheng/284302.html 转载请保留说明!

上一篇:yii权限控制的方法(三种方法)(权限控制的原则是什么)

下一篇:Yii中CGridView实现批量删除的方法(yii gridview)

  • 新公司三个月没有录入职员
  • 公司注销了账本还需保留吗
  • 企业接受捐赠固定资产计入什么科目
  • 建筑劳务公司税负率多少才合适
  • 电子承兑提示付款
  • 怎么把预付账款转到管理费用
  • 住宿费电子发票样式
  • 独立核算的分公司怎么报税
  • 股票投资会计科目
  • 交通费补贴报销的会计分录怎么做?
  • 境外企业向境内提供国际运输服务核定征收的企业所得税
  • 别人给的发票一直不开
  • 公司户进账一定要扣税吗
  • 开了增值税发票不确认收入可以吗
  • 物流企业税务稽查要点
  • 2021年沙子水泥税率是多少
  • 小规模纳税人开票额度
  • 可税前扣除的捐赠支出
  • 企业发放工资时,可能涉及的会计科目有
  • 事业单位考试一门多长时间
  • 电子税务局社保申报截止日期每月
  • 资产减值损失和信用减值损失的区别
  • 小规模纳税人注销需要查账吗
  • 本月无票收入到下月开具如何申报
  • 物流服务费税率是多少
  • 零余额账户用款额度年末转入什么科目
  • 调整增值税税率
  • 融资租赁的利息可以税前扣除吗
  • 电子商业承兑与银行承兑哪个好
  • 收到汇算清缴后怎么处理
  • 结转人工费会计分录
  • 解决思路怎么写
  • linux设置用户密码
  • php 静态
  • 税务登记后每个月交什么钱
  • web服务器做什么用的
  • 应交税金及附加包括哪些
  • vue-plugin-hiprint vue hiprint vue使用hiprint打印控件VUE HiPrint HiPrint简单使用
  • vue全局组件和局部组件
  • PHP mysqli_free_result()与mysqli_fetch_array()函数详解
  • get命令获取文件夹
  • 印花税与增值税有什么区别
  • 公司购买的商品是白酒用于招待现金流项目是哪类
  • 异地预交个人所得税
  • 不动产集体产权证什么意思
  • 增值税纳税申报类型怎么填
  • 个体工商户税收起征点是多少?
  • db2数据文件
  • 流动资产周转天数高说明什么
  • 本年计算扣除限额的基数计算公式
  • 企业固定资产可以不提折旧吗
  • 哪些发票不能用
  • 补缴年报所得税怎么填
  • 如何计提营业税
  • 小规模纳税人去年免税,红冲后今年开多少税率的发票
  • 报销招待费是什么意思
  • 怎么解释税收
  • 非限定性净资产 限定性净资产
  • 百旺红字专用发票怎么开
  • 办公家具可以一次性抵扣吗?
  • 财产裁定书
  • 以前年度多计提的社保费怎么冲回
  • 公司买车可以抵税几年
  • 企业出租商业铺面需要缴纳什么税
  • sql数据库连不上可能的原因
  • sql数据库压缩能提高性能吗
  • mysql常见报错
  • ubuntu网卡命令
  • centos配置http
  • windows sky high
  • 苹果mac最新的系统
  • linux升级系统版本
  • win10天气预报设置
  • win7如何删除系统启动项
  • 判断输入的日期是一年中第几天
  • jQ处理xml文件和xml字符串的方法(详解)
  • js 延迟函数
  • 基于JavaScript的网页代码
  • jqueryif判断
  • python系统代码
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设