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迅雷、快车、旋风下载专用链转换代码
Jun 15 PHP
用PHP写的基于Memcache的Queue实现代码
Nov 27 PHP
PHP函数篇详解十进制、二进制、八进制和十六进制转换函数说明
Dec 05 PHP
深入解析php之sphinx
May 15 PHP
ThinkPHP令牌验证实例
Jun 18 PHP
php发送短信验证码完成注册功能
Nov 24 PHP
PHP Cookei记录用户历史浏览信息的代码
Feb 03 PHP
php实现图片缩略图的方法
Mar 29 PHP
ThinkPHP3.2.1图片验证码实现方法
Aug 19 PHP
PHP判断表达式中括号是否匹配的简单实例
Oct 22 PHP
php微信公众号开发之图片回复
Oct 20 PHP
php实现简易计算器
Aug 28 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
新52大事件
2020/03/03 欧美动漫
PHP中的按位与和按位或操作示例
2014/01/27 PHP
PHP输出多个元素的排列或组合的方法
2017/03/14 PHP
php微信公众号开发之翻页查询
2018/10/20 PHP
JavaScript 学习小结(适合新手参考)
2009/07/30 Javascript
jquery 图片轮换效果
2010/07/29 Javascript
js设置document.domain实现跨域的注意点分析
2015/05/21 Javascript
文件上传的几个示例分享【推荐】
2016/12/16 Javascript
浅谈js中startsWith 函数不能在任何浏览器兼容的问题
2017/03/01 Javascript
Jquery中attr与prop的区别详解
2017/05/27 jQuery
微信小程序与php 实现微信支付的简单实例
2017/06/23 Javascript
JS实现简单的选择题测评系统代码思路详解(demo)
2017/09/03 Javascript
使用D3.js创建物流地图的示例代码
2018/01/27 Javascript
vue里面v-bind和Props 利用props绑定动态数据的方法
2018/08/27 Javascript
vue input实现点击按钮文字增删功能示例
2019/01/29 Javascript
js实现for循环跳过undefined值示例
2019/07/02 Javascript
Bootstrap table 实现树形表格联动选中联动取消功能
2019/09/30 Javascript
[42:20]Secret vs Liquid 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/17 DOTA
[01:11:46]DOTA2-DPC中国联赛 正赛 iG vs Magma BO3 第一场 2月23日
2021/03/11 DOTA
python控制台英汉汉英电子词典
2020/04/23 Python
Python多线程爬虫简单示例
2016/03/04 Python
TensorFlow实现RNN循环神经网络
2018/02/28 Python
python之从文件读取数据到list的实例讲解
2018/04/19 Python
python排序函数sort()与sorted()的区别
2018/09/18 Python
python pygame实现2048游戏
2018/11/20 Python
用python-webdriver实现自动填表的示例代码
2021/01/13 Python
CSS3媒体查询(Media Queries)介绍
2013/09/12 HTML / CSS
中国最大隐形眼镜网上商城:视客眼镜网
2016/10/30 全球购物
英国工具中心:UK Tool Centre
2017/07/10 全球购物
家长会学生演讲稿
2014/04/26 职场文书
2014年庆祝国庆65周年演讲稿
2014/09/21 职场文书
2014法院四风问题对照检查材料思想汇报
2014/10/04 职场文书
成品仓管员岗位职责
2015/04/01 职场文书
六种css3实现的边框过渡效果
2021/04/22 HTML / CSS
Mysql InnoDB 的内存逻辑架构
2022/05/06 MySQL
MyBatis XPathParser解析器使用范例详解
2022/07/15 Java/Android