thinkPHP数据查询常用方法总结【select,find,getField,query】


Posted in PHP onMarch 15, 2017

本文实例讲述了thinkPHP数据查询常用方法。分享给大家供大家参考,具体如下:

thinkphp已经封装好了常用的查询方法,且都比较实用,对于不常用的查询框架也保留了原始查询方法query

$Model = new Model() // 实例化一个model对象 没有对应任何数据表
$Model->query("select * from think_user where status=1");

如果刚学Thinkphp对框架不太了解可以用query($sql)execute($sql) 两个方法可以实现任何的sql操作。query用于查询操作execute用于非查询操作。但是框架已经封装好了常用的方法,且用起来更方便。

下面是最常用的查询方法:

1. select()

// 将所有数据查出,失败返回 false,无结果返回 null
$user = M('demo');
$data = $user->select();
dump($data);
// 加入条件
$user->field('name,sex')->where('id > 2')->order('age')->limit(3)->select();
//查询主键值为30的信息
$user->select('30');
// 查询主键为21,23,27的值
$user->select('21,23,27');

2. find()

// 查询出一条数据
$user = M('demo');
// 失败返回false
if($data = $user->find()){
  dump($data);
}
// 加入where条件
$user = M('demo');
$data = $user->field('name,sex')->where('id > 2')->find();
dump($data);
// 返回一维数组
$data->find('30');
$manager->where("username = '$username' and password = '$password'")->find();

3. getField()

// 获取列数据中的第一条
$user = M('demo');
$data = $user->getField('name');//默认第一个
// 第二个参数位true 则获取整列数据
$user->where("id = 3")->getField('name',true);
// 限制显示条数
$nickname = $User->where('status=1')->getField('nickname',8);
$nickname = $User->where('status=1')->limit(8)->getField('nickname',true);
// 返回二维数组,键名为第一个
$nickname = $User->where('status=1')->getField('id,nickname,sex');
// 使用连接符':' 键名是id值,键值则是account:nickname连接组成的字符串
$result = $User->where('status=1')->getField('id,account,nickname',':');

还有详细的查询方法详见 ThinkPHP3.2手册中的 "模型>查询语句" 章节。

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

PHP 相关文章推荐
深入理解PHP几个算法:PHP冒泡、PHP二分法、PHP求素数、PHP乘法表
Jun 06 PHP
限制ckeditor上传图片文件大小的方法
Nov 15 PHP
php 解压rar文件及zip文件的方法
May 05 PHP
WordPres对前端页面调试时的两个PHP函数使用小技巧
Dec 22 PHP
Symfony学习十分钟入门经典教程
Feb 03 PHP
Joomla使用Apache重写模式的方法
May 04 PHP
php curl上传、下载、https登陆实现代码
Jul 23 PHP
PHP 中TP5 Request 请求对象的实例详解
Jul 31 PHP
php中通用的excel导出方法实例
Dec 30 PHP
TP(thinkPHP)框架多层控制器和多级控制器的使用示例
Jun 13 PHP
laravel 操作数据库常用函数的返回值方法
Oct 11 PHP
在laravel中实现将查询的对象转换为多维数组的函数
Oct 21 PHP
wordpress网站转移到本地运行测试的方法
Mar 15 #PHP
thinkPHP+ajax实现统计页面pv浏览量的方法
Mar 15 #PHP
PHP判断是手机端还是PC端 PHP判断是否是微信浏览器
Mar 15 #PHP
thinkPHP简单导入和使用阿里云OSSsdk的方法
Mar 15 #PHP
YII中Ueditor富文本编辑器文件和图片上传的配置图文教程
Mar 15 #PHP
thinkPHP简单调用函数与类库的方法
Mar 15 #PHP
Yii2 批量插入、更新数据实例
Mar 15 #PHP
You might like
跟我学小偷程序之成功偷取首页(第三天)
2006/10/09 PHP
PHP无限分类代码,支持数组格式化、直接输出菜单两种方式
2011/05/18 PHP
php实现贪吃蛇小游戏
2016/07/26 PHP
php使用preg_match()函数验证ip地址的方法
2017/01/07 PHP
YII2框架中excel表格导出的方法详解
2017/07/21 PHP
PHP 中 var_export、print_r、var_dump 调试中的区别
2018/06/19 PHP
学习ExtJS table布局
2009/10/08 Javascript
JS去除字符串两端空格的简单实例
2013/12/27 Javascript
jquery学习总结(超级详细)
2014/09/04 Javascript
Javascript实现鼠标框选操作  不是点击选取
2016/04/14 Javascript
jQuery实现微信长按识别二维码功能
2016/08/26 Javascript
js实现抽奖效果
2017/03/27 Javascript
使用requirejs模块化开发多页面一个入口js的使用方式
2017/06/14 Javascript
Bootstrap按钮组实例详解
2017/07/03 Javascript
详解node如何让一个端口同时支持https与http
2017/07/04 Javascript
vue-router结合vuex实现用户权限控制功能
2019/11/14 Javascript
解决 window.onload 被覆盖的问题方法
2020/01/14 Javascript
[05:29]2014DOTA2国际邀请赛 赛后专访:LGDNewbee顺利过关
2014/07/13 DOTA
基于numpy.random.randn()与rand()的区别详解
2018/04/17 Python
TensorFlow实现模型评估
2018/09/07 Python
python模块之subprocess模块级方法的使用
2019/03/26 Python
python如何通过pyqt5实现进度条
2020/01/20 Python
pycharm新建Vue项目的方法步骤(图文)
2020/03/04 Python
Python制作数据预测集成工具(值得收藏)
2020/08/21 Python
python用Configobj模块读取配置文件
2020/09/26 Python
CSS3 中的@keyframes介绍
2014/09/02 HTML / CSS
详解CSS3的图层阴影和文字阴影效果使用
2016/06/09 HTML / CSS
阿玛尼化妆品美国官网:Giorgio Armani Beauty
2017/02/02 全球购物
Levi’s西班牙官方网站:李维斯,著名的牛仔裤品牌
2020/08/20 全球购物
opencv实现图像平移效果
2021/03/24 Python
入党积极分子自我鉴定范文
2014/03/25 职场文书
大三学生英语考试作弊检讨书
2015/01/01 职场文书
2015年员工试用期工作总结
2015/05/28 职场文书
2016保送生自荐信范文
2016/01/29 职场文书
vue前端工程的搭建
2021/03/31 Vue.js
nginx前后端同域名配置的方法实现
2021/03/31 Servers