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 相关文章推荐
无数据库的详细域名查询程序PHP版(5)
Oct 09 PHP
消息持续发送的完整例子
Oct 09 PHP
推荐php模板技术[转]
Jan 04 PHP
PHP Session变量不能传送到下一页的解决方法
Nov 27 PHP
PHP fastcgi模式上传大文件(大约有300多K)报错
Sep 28 PHP
PHP使用array_fill定义多维数组的方法
Mar 18 PHP
PHP使用Face++接口开发微信公众平台人脸识别系统的方法
Apr 17 PHP
WordPress中获取页面链接和标题的相关PHP函数用法解析
Dec 17 PHP
详解PHP中cookie和session的区别及cookie和session用法小结
Jun 12 PHP
不常用但很实用的PHP预定义变量分析
Jun 25 PHP
php正则表达式使用方法整理集合
Jan 31 PHP
php计数排序算法的实现代码(附四个实例代码)
Mar 31 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
thinkphp连贯操作实例分析
2014/11/22 PHP
PHP连接MySQL进行增、删、改、查操作
2017/02/19 PHP
关于laravel框架中的常用目录路径函数
2019/10/23 PHP
基于jQuery的表格操作插件
2010/04/22 Javascript
JS操作select下拉框动态变动(创建/删除/获取)
2013/06/02 Javascript
Javascript中的五种数据类型详解
2014/12/26 Javascript
ajax读取数据后使用jqchart显示图表的方法
2015/06/10 Javascript
Node.js中npm常用命令大全
2016/06/09 Javascript
JS实现将链接生成二维码并转为图片的方法
2018/03/17 Javascript
vuex state及mapState的基础用法详解
2018/04/19 Javascript
搭建Vue从Vue-cli到router路由护卫的实现
2019/11/14 Javascript
详解一些适用于Node.js的命名约定
2019/12/08 Javascript
解决element-ui里的下拉多选框 el-select 时,默认值不可删除问题
2020/08/14 Javascript
Python解析nginx日志文件
2015/05/11 Python
python中计算一个列表中连续相同的元素个数方法
2018/06/29 Python
python读取和保存图片5种方法对比
2018/09/12 Python
Pandas删除数据的几种情况(小结)
2019/06/21 Python
Django结合ajax进行页面实时更新的例子
2019/08/12 Python
使用python脚本自动创建pip.ini配置文件代码实例
2019/09/20 Python
Python字符串格式化输出代码实例
2019/11/22 Python
Tensorflow 多线程设置方式
2020/02/06 Python
Python如何通过百度翻译API实现翻译功能
2020/04/02 Python
Python 操作 PostgreSQL 数据库示例【连接、增删改查等】
2020/04/21 Python
美国最顶级的精品店之一:Hampden Clothing
2016/12/22 全球购物
机械专业应届生求职信
2013/12/12 职场文书
成功经营餐厅的创业计划书范文
2013/12/26 职场文书
大学生村官承诺书
2014/03/28 职场文书
社团活动总结格式
2014/08/29 职场文书
邀请函格式范文
2015/02/02 职场文书
小学教师自我评价
2015/03/04 职场文书
安全生产感想
2015/08/07 职场文书
Python 多线程之threading 模块的使用
2021/04/14 Python
python中的mysql数据库LIKE操作符详解
2021/07/01 MySQL
Mysql使用全文索引(FullText index)的实例代码
2022/04/03 MySQL
DE1103使用报告
2022/04/05 无线电
Python 装饰器(decorator)常用的创建方式及解析
2022/04/24 Python