PHP ThinkPHP 非常好用的增删改查方法
获取列表数据(多条)
/**
* 获取页面列表
* @param $params //查询条件 例:['id'=>['in','1,2']] ['status'=>1]
* @param array $orderby //排序 例:['id'=>'desc']
* @param array $limit //查询页数 例:[0,10]
* @param bool $is_total 是否需要总数
* @param string $fields 是否需要总数 例:'name'
* @return array
*/
public function resultsAction($params = [],$orderby = [],$limit = [],$is_total = true,$fields = ''){
if(empty($orderby)){
$orderby = array('id'=>'desc');
} //列表模型
$results = $this
->where($params)
->order($orderby)
->field($fields); //查询数量
if(!empty($limit)){
list($offset, $limit) = [$limit[0],$limit[1]]; $results = $results->limit($offset,$limit);
} //查询
$results = $results->select(); //把数据转为数组
$results = collection($results)->toArray(); //总数
if (!$is_total){
return $results;
} //查询总数
$total = $this
->where($params)
->count(); return $result = array("total" => $total, "rows" => $results);
}
获取单条数据
/**
* 获取单数据
* @param array $params
* @param string $fields
*/
public function resultAction($params = [],$fields = ''){
$result = $this
->field($fields)
->where($params)
->find(); if(!empty($result)){
$result=$result->toArray();
}
return $result;
}
新增或修改数据
/**
* 新增或修改数据
* @param array $params 更新内容
* @param array $args 更新条件 存在值为更新
*/
public function saveAction($params = [],$args = []){
if(empty($args)){
$save = $this
->allowField(true)
->save($params);
}
else{
$save = $this
->allowField(true)
->update($params,$args);
} return $save;
}
删除数据
/**
*删除
* @param array $params //查询条件 例:['id'=>['in','1,2']] ['status'=>1]
*/
public function delAction($params = []){
$del = $this
->where($params)
->delete();
return $del;
}
插入多条数据
/**
* 新增
* @param array $params 更新内容
*/
public function saveAllAction($params = []){
$save = $this
->allowField(true)
->saveAll($params); return $save;
}
PHP ThinkPHP 非常好用的增删改查方法的更多相关文章
- Spring Data CrudRepository增删改查方法(八)
CrudRepository 的主要方法 long count(); boolean exists(Integer arg0); <S extends StudentPO> S sav ...
- Django REST framework 五种增删改查方法
Django-DRF-视图的演变 版本一(基于类视图APIView类) views.py: APIView是继承的Django View视图的. 1 from .serializers impor ...
- 通用mapper的增删改查方法 留存 备忘
Mybatis通用Mapper介绍与使用 前言 使用Mybatis的开发者,大多数都会遇到一个问题,就是要写大量的SQL在xml文件中,除了特殊的业务逻辑SQL之外,还有大量结构类似的增删改查SQ ...
- ThinkPHP实现对数据库的增删改查
好久都没有更新博客了,之前老师布置的任务总算是现在可以说告一段落了,今天趁老师还没提出其他要求来更新一篇博客. 今天我想记录的是我之前做项目,自己所理解的ThinkPHP对数据库的增删改查. 首先要说 ...
- 关于单链表的增删改查方法的递归实现(JAVA语言实现)
因为在学习数据结构,准备把java的集合框架底层源码,好好的过一遍,所以先按照自己的想法把单链表的类给写出来了; 写该类的目的: 1.练习递归 2.为深入理解java集合框架底层源码打好基础 学习的视 ...
- classLIST元素增删改查方法
window.onload=function () { var oDiv=document.getElementsByTagName('div')[0]; var oInP=document.getE ...
- js 增删改查方法
push() 向数组的末尾添加一个或多个元素 pop() 删除数组内部并返回数组的最后一个元素 shift() 把数组内部的第一个元素从其中删除,并返回第一个元素的值 unshift() 向数组外部的 ...
- PHP历程(封装的增删改查方法)
db.class.php 主要方法 <?php /** * 数据库配置信息 */ define('DB_HOST','127.0.0.1'); //服务器 define('DB_USER', ...
- Hibernate常用增删改查方法
/** * @param obj * @return * 添加数据 */ public Serializable saveObject(Object obj){ return this.getHibe ...
随机推荐
- 日地拉格朗日L2点轨道的卫星运行
看了嫦娥四号通信的中继卫星,不明白是怎么运行的,下面的演示解除了我的疑问. https://lt.cjdby.net/thread-2479933-1-2.html
- dart入门指南
近来,flutter的热度在上升.flutter应用的主要开发语言是dart, 因此,欲练flutter, 必先了解dart. dart是由google开发的编程语言,可用于开发移动应用,桌面应用,h ...
- NodeJS4-2静态资源服务器实战_实现获取文件路径
实例2 : 实现获取文件路径,判断是文件还是文件夹,如果是文件夹就显示里面的列表文件,如果是文件就显示里面的内容 defaultConfig.js module.exports={ root:proc ...
- 《Java Spring框架》SpringXML配置详解
Spring框架作为Bean的管理容器,其最经典最基础的Bean配置方式就是纯XML配置,这样做使得结构清晰明了,适合大型项目使用.Spring的XML配置虽然很繁琐,而且存在简洁的注解方式,但读懂X ...
- [译]C# 7系列,Part 9: ref structs ref结构
原文:https://blogs.msdn.microsoft.com/mazhou/2018/03/02/c-7-series-part-9-ref-structs/ 背景 在之前的文章中,我解释了 ...
- 学习python这么久,有没有考虑发布一个属于自己的模块?
1. 为什么需要对项目分发打包? 平常我们习惯了使用 pip 来安装一些第三方模块,这个安装过程之所以简单,是因为模块开发者为我们默默地为我们做了所有繁杂的工作,而这个过程就是 打包. 打包,就是 ...
- Linux服务器部署.Net Core笔记:五、安装Nginx
我们搜索一下yum库关于nginx的rpm包:yum list | grep nginx 找到rpm安装包,我们就可以使用yum直接安装了:yum install nginx 修改nginx配置文件: ...
- ZedGraph的曲线的LineItem对象的Tag属性存储信息进而在鼠标悬浮时进行显示
场景 Winform中设置ZedGraph鼠标悬浮显示距离最近曲线上的点的坐标值和X轴与Y轴的标题: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article ...
- 如何利用PS将照片背景替换为白色
需求:将照片中的蓝底换成白底: 操作步骤: 1.打开图片,点击背景图层: 2.利用套索,选中除背景外的区域: 3.右键,反选: 4.填充为“白色”,确定,保存:
- Dynamics 365 Portal Onpremise缓存问题
最近被Dynamics 365 Portal的缓存问题折腾得不轻,Portal的配置进行缓存也就算了,连CRM中的记录也进行了长达15分钟到2小时的缓存,这是完全无法接受的 试想,我们有一个Porta ...