第十四章:第14节thinkPHP框架——操作数据库(一)查询数据集

更新于:2018-01-14 19:27:31

从这节开始学习TP框架怎么操作数据库。这部分内容也很多,楠神只介绍一部分,也是我常用的一部分知识,足可以玩转TP框架的数据库操作。


首先对database.php文件做下配置,


1.png


“phpnanshen”数据库里目前有个“php_user_info”表


1.png


下面开始演示对此表的数据集查询:


1)查询所有数据时:


对象->select();


说明:


这个对象可以是数据库对象,也可以是模型对象。推荐大家用模型对象对数据库操作,这节楠神先不讲模型对象,先讲数据库对象。


数据库对象获取的三种方式:


①Db类的table静态方法、②name静态方法、③db函数


演示:


1.png


1.png


这三种方式都正常执行了SQL语句“SELECT * FROM `php_user_info`”。


如果获取数据库对象,推荐大家用db函数。


注意:有个地方说明下,如果使用的TP框架是5.0.9以下版本,db函数要这样使用db('user_info',[],false),当前楠神使用的版本是5.0.13版本。原因是:


1.png


2)查询所有行的某几个字段


对象->field(字段字符串)->select();


字段字符串默认是“*”。


演示:


1.png


1.png


3)带条件查询


对象->field(字段字符串)->where(条件参数)->select();


说明:


where方法的参数有很多种,常见的有:


where('条件字符串');//一般不推荐

where('字段名','值');//

where('字段名','表达式','查询条件');

where(['字段名'=>'值']);//多个条件推荐用这个


更详细的介绍去看官方手册,楠神在这就不对这个方法做更多说明了。


演示:


1.png


1.png


SQL语句的其他操作楠神不演示了,每一种操作都会有一个方法,比如排序用order方法,加锁读取用lock方法。楠神前面写的一个小框架,Db类的方法都是比照着TP框架写的。


额外说明:


select 方法查询结果存在,返回的是二维数组;不存在,返回空数组。


楠神觉着返回空数组是很好的。因为我们通常用select查询完数据,紧接着常用foreach遍历数组。回顾《第四章28节内容》,foreach只有在遍历的是数组变量的时候才不会报错。


本节学习代码》》》