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 相关文章推荐
与数据库连接
Oct 09 PHP
PHP的中问验证码
Nov 25 PHP
php的chr和ord函数实现字符加减乘除运算实现代码
Dec 05 PHP
php不允许用户提交空表单(php空值判断)
Nov 12 PHP
php遍历目录输出目录及其下的所有文件示例
Jan 27 PHP
php过滤html中的其他网站链接的方法(域名白名单功能)
Apr 24 PHP
php实现根据词频生成tag云的方法
Apr 17 PHP
typecho插件编写教程(一):Hello World
May 28 PHP
在WordPress中使用wp_count_posts函数来统计文章数量
Jan 05 PHP
PHP的Yii框架中YiiBase入口类的扩展写法示例
Mar 17 PHP
超强多功能php绿色集成环境详解
Jan 25 PHP
Ubuntu彻底删除PHP7.0的方法
Jul 27 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中如何防止表单的重复提交
2013/08/02 PHP
php几个预定义变量$_SERVER用法小结
2014/11/07 PHP
php实现模拟登陆方正教务系统抓取课表
2015/05/19 PHP
微信公众号开发之获取位置信息php代码
2018/06/13 PHP
由浅到深了解JavaScript类
2006/09/08 Javascript
javascript小组件 原生table排序表格脚本(兼容ie firefox opera chrome)
2012/07/25 Javascript
Jquery刷新页面背景图片随机变换的实现方法
2013/03/15 Javascript
js onclick事件传参讲解
2013/11/06 Javascript
Jquery中children与find之间的区别详细解析
2013/11/29 Javascript
Javascript遍历Html Table示例(包括内容和属性值)
2014/07/08 Javascript
Jquery easyui 实现动态树
2015/11/17 Javascript
详解js跨域原理以及2种解决方案
2015/12/09 Javascript
js实现内容显示并使用json传输数据
2016/03/16 Javascript
jQuery实现为LI列表前3行设置样式的方法【2种方法】
2016/09/04 Javascript
利用BootStrap的Carousel.js实现轮播图动画效果
2016/12/21 Javascript
JS引用传递与值传递的区别与用法分析
2018/06/01 Javascript
微信小程序利用swiper+css实现购物车商品删除功能
2019/03/06 Javascript
Python的Flask框架中Flask-Admin库的简单入门指引
2015/04/07 Python
python实现的希尔排序算法实例
2015/07/01 Python
Python在线运行代码助手
2016/07/15 Python
十分钟利用Python制作属于你自己的个性logo
2018/05/07 Python
解决pycharm无法调用pip安装的包问题
2018/05/18 Python
如何用Python实现简单的Markdown转换器
2018/07/16 Python
Python流程控制 while循环实现解析
2019/09/02 Python
Python整数与Numpy数据溢出问题解决
2019/09/11 Python
python中numpy数组与list相互转换实例方法
2021/01/29 Python
纯css3实现宠物小鸡实例代码
2018/10/08 HTML / CSS
Maison Lab荷兰:名牌Outlet购物
2018/08/10 全球购物
日语专业推荐信
2013/11/12 职场文书
医学生个人求职信范文
2014/02/07 职场文书
学校党支部承诺书
2015/04/30 职场文书
大学生社区义工服务心得体会
2016/01/22 职场文书
励志语录:你若不勇敢,谁替你坚强
2019/11/08 职场文书
解读Vue组件注册方式
2021/05/15 Vue.js
MySQL数据库事务的四大特性
2022/04/20 MySQL
Redis实现分布式锁的五种方法详解
2022/06/14 Redis