查看: 1278|回复: 0

[PHP实例] thinkPHP数据查询常用方法总结【select,find,getField,query】

发表于 2018-2-26 09:00:18

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

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

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

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

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

1. select()

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

2. find()

  1. // 查询出一条数据
  2. $user = M('demo');
  3. // 失败返回false
  4. if($data = $user->find()){
  5. dump($data);
  6. }
  7. // 加入where条件
  8. $user = M('demo');
  9. $data = $user->field('name,sex')->where('id > 2')->find();
  10. dump($data);
  11. // 返回一维数组
  12. $data->find('30');
  13. $manager->where("username = '$username' and password = '$password'")->find();
复制代码

3. getField()

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

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

更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》、《smarty模板入门基础教程》及《PHP模板技术总结》。

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

您可能感兴趣的文章:

  • ThinkPHP实现批量删除数据的代码实例
  • ThinkPHP写数组插入与获取最新插入数据ID实例
  • 浅析THINKPHP的addAll支持的最大数据量
  • 基于ThinkPHP实现批量删除
  • thinkphp框架实现删除和批量删除
  • Thinkphp批量更新数据的方法汇总
  • thinkphp3.2.3版本的数据库增删改查实现代码
  • thinkPHP批量删除的实现方法分析
  • thinkPHP数据库增删改查操作方法实例详解
  • 基于thinkPHP类的插入数据库操作功能示例
  • ThinkPHP3.2框架使用addAll()批量插入数据的方法


回复

使用道具 举报