thinkphp的CURD和查询方式介绍


Posted in PHP onDecember 19, 2013

对数据的读取 Read

$m=new Model('User');
$m=M('User');
select
$m->select();//获取所有数据,以数组形式返回
find
$m->find($id);//获取单条数据
getField(字段名)//获取一个具体的字段值
$arr=$m->where('id=2')->getField('username');

三、ThinkPHP 3 创建数据    (重点)

对数据的添加 Create

$m=new Model('User');
$m=M('User');
$m->字段名=值
$m->add();

返回值是新增的id号

四、ThinkPHP 3 删除数据    (重点)

$m=M('User');
$m->delete(2);               //删除id为2的数据
$m->where('id=2')->delete(); //与上面效果相同,也是删除id为2的数据

返回值是受影响行数

五、ThinkPHP 3 更新数据    (重点)

$m=M('User');
$data['id']=1;
$data['username']='ztz2';
$m->save($data);            

返回值是受影响行数

============================================

一、普通查询方式

二、表达式查询方式

三、区间查询

四、统计查询

五、SQL直接查询

一、普通查询方式

a、字符串

$arr=$m->where("sex=0 and username='gege'")->find();

b、数组
$data['sex']=0;
$data['username']='gege';
$arr=$m->where($data)->find();

注意:这种方式默认是and的关系,如果使用or关系,需要添加数组值
$data['sex']=0;
$data['username']='gege';
$data['_logic']='or';

二、表达式查询方式
$data['id']=array('lt',6);
$arr=$m->where($data)->select();

EQ 等于

NEQ不等于

GT 大于

EGT大于等于

LT 小于

ELT小于等于

LIKE 模糊查询

$data['username']=array('like','%ge');
$arr=$m->where($data)->select();
NOTLIKE
$data['username']=array('notlike','%ge%'); //notlike中间没有空格
    $arr=$m->where($data)->select();

 

注意:如果一个字段要匹配多个通配符

$data['username']=array('like',array('%ge%','%2%','%五%'),'and');//如果没有第三个值,默认关系是or关系
$arr=$m->where($data)->select();
BETWEEN
$data['id']=array('between',array(5,7));
$arr=$m->where($data)->select();
//SELECT * FROM `tp_user` WHERE ( (`id` BETWEEN 5 AND 7 ) )
$data['id']=array('not between',array(5,7));//注意,not 和 between中间一定要有空格
$arr=$m->where($data)->select();
IN
$data['id']=array('in',array(4,6,7));
$arr=$m->where($data)->select();
//SELECT * FROM `tp_user` WHERE ( `id` IN (4,6,7) )
$data['id']=array('not in',array(4,6,7));
$arr=$m->where($data)->select();
//SELECT * FROM `tp_user` WHERE ( `id` NOT IN (4,6,7) )

三、区间查询

$data['id']=array(array('gt',4),array('lt',10));//默认关系是 and 的关系
//SELECT * FROM `tp_user` WHERE ( (`id` > 4) AND (`id` < 10) ) 
$data['id']=array(array('gt',4),array('lt',10),'or') //关系就是or的关系
$data['name']=array(array('like','%2%'),array('like','%五%'),'gege','or');

四、统计查询

count //获取个数

max   //获取最大数

min   //获取最小数

avg   //获取平均数

sum   //获取总和

五、SQL直接查询

a、query 主要数处理读取数据的

成功返回数据的结果集

失败返回boolean false

$m=M();
$result=$m->query("select *  from t_user where id >50");
var_dump($result);

b、execute 用于更新个写入操作

成功返回影响行数

失败返回boolean false

$m=M();
$result=$m->execute("insert into t_user(`username`) values('ztz3')");
var_dump($result);
PHP 相关文章推荐
phpfans留言版用到的数据操作类和分页类
Jan 04 PHP
php Sql Server连接失败问题及解决办法
Aug 07 PHP
PHP 数组教程 定义数组
Oct 23 PHP
解析关于java,php以及html的所有文件编码与乱码的处理方法汇总
Jun 24 PHP
微信API接口大全
Apr 15 PHP
PHP快速生成各种信息提示框的方法
Feb 03 PHP
将PHP的session数据存储到数据库中的代码实例
Jun 24 PHP
php将print_r处理后的数据还原为原始数组的解决方法
Nov 02 PHP
PHP文件操作详解
Dec 30 PHP
PHP将身份证正反面两张照片合成一张图片的代码
Apr 08 PHP
php链式操作的实现方式分析
Aug 12 PHP
php高性能日志系统 seaslog 的安装与使用方法分析
Feb 29 PHP
php实现图片缩放功能类
Dec 18 #PHP
php防止sql注入代码实例
Dec 18 #PHP
php读取csv实现csv文件下载功能
Dec 18 #PHP
用PHP实现弹出消息提示框的两种方法
Dec 17 #PHP
sae使用smarty模板的方法
Dec 17 #PHP
解决file_get_contents无法请求https连接的方法
Dec 17 #PHP
phpstrom使用xdebug配置方法
Dec 17 #PHP
You might like
php集成环境xampp中apache无法启动问题解决方案
2014/11/18 PHP
php的debug相关函数用法示例
2016/07/11 PHP
一文看懂PHP进程管理器php-fpm
2020/06/01 PHP
javascript sudoku 数独智力游戏生成代码
2010/03/27 Javascript
JQuery拖拽元素改变大小尺寸实现代码
2012/12/10 Javascript
AngularJS进行性能调优的7个建议
2015/12/28 Javascript
基于JavaScript实现通用tab选项卡(通用性强)
2016/01/07 Javascript
详解Javascript ES6中的箭头函数(Arrow Functions)
2016/08/24 Javascript
JavaScript递归操作实例浅析
2016/10/31 Javascript
有关JS中的0,null,undefined,[],{},'''''''',false之间的关系
2017/02/14 Javascript
js 作用域和变量详解
2017/02/16 Javascript
浅析vue component 组件使用
2017/03/06 Javascript
vue2.x select2 指令封装详解
2017/10/12 Javascript
js实现会跳动的日历效果(完整实例)
2017/10/18 Javascript
vue基于mint-ui的城市选择3级联动的示例
2017/10/25 Javascript
JS函数节流和函数防抖问题分析
2017/12/18 Javascript
JavaScript递归函数定义与用法实例分析
2019/01/24 Javascript
使用 JavaScript 创建并下载文件(模拟点击)
2019/10/25 Javascript
[01:18:21]EG vs TNC Supermajor小组赛B组败者组第一轮 BO3 第一场 6.2
2018/06/03 DOTA
python3实现点餐系统
2019/01/24 Python
python统计指定目录内文件的代码行数
2019/09/19 Python
python DataFrame转dict字典过程详解
2019/12/26 Python
Python包,__init__.py功能与用法分析
2020/01/07 Python
Python使用monkey.patch_all()解决协程阻塞问题
2020/04/15 Python
python通过cython加密代码
2020/12/11 Python
selenium学习教程之定位以及切换frame(iframe)
2021/01/04 Python
HTML5 层的叠加的实现
2020/07/07 HTML / CSS
西班牙著名的珠宝首饰品牌:P D PAOLA
2018/09/15 全球购物
2014组织生活会方案
2014/05/19 职场文书
大四优秀党员个人民主评议
2014/09/19 职场文书
迟到检讨书范文
2015/01/27 职场文书
安全生产警示教育活动总结
2015/05/09 职场文书
2016年员工政治思想表现评语
2015/12/02 职场文书
2016年10月份红领巾广播稿
2015/12/21 职场文书
如何书写民事调解协议书?
2019/06/25 职场文书
创业计划书之水果店
2019/07/18 职场文书