# 查询数据库
### 数据集返回类型改为collection
# 注意::所以的查询如果数据库没有相关值返回null 空 ,有返回数据
![](https://img.kancloud.cn/35/e3/35e3ef4fab5c89e65a04b98a8e9633ea_633x556.png)
## 查询数据库语法1:
## self::get(1)查询数据库其中(1)为ID1 找自增主键
## toArray() 对象集转换为数组
## 代码案例:
```
use think\Model;
class Maik extends Model{
public function usenameinfo(){
$res=self::get(1);
dump($res->toArray());
//对象集转换为数组
}
```
## 获取多条数据
```
self::all([1,3,4]) 其中1,3,4为数据库主键,ID的值
<?php
```
##
代码案例:
```
namespace app\index\model;
use think\Model;
class Maik extends Model{
public function usenameinfo(){
$res=self::all([1,3,4]);
dump($res->toArray());
}
```
## get方法条件查询法:
```
## self::get(['name'=>'zhangxueyou']); // 其中name为数据库键名,zhangxueyou为数据值,
```
## 代码案例:
```
<?php
namespace app\index\model;
//命名空间model
use think\Model;
//引入think里的 Model类
class Maik extends Model{
public function usenameinfo(){
//$res=self::get(['name'=>'liudehua']);
//get方法条件查询
$res=$this->select(); //查询 Maik表里的所有数据
//dump($res->toArray());
dump($res->toArray()); //返回对象数组化
}
}
```
## find()方法查询
```
## $res=$this->where('id',1)->find(); //where()条件查询
```
## select()方法多条查询
```
$res=$this->select();
```
## select()方法单条查询
```
$res=$this->where('id',1)->select();
```
## 代码案例:
```
<?php
namespace app\index\model;
use think\Model;
class Maik extends Model{
public function usenameinfo(){
$res=$this->select();
dump($res->toArray());
}
}
```
## 调用方法:
controller模型里调用
![](https://img.kancloud.cn/01/9c/019c85f620b6e68cd16b12405b203b0f_788x671.png)
```
<?php
namespace app\index\controller;
use think\Controller;
use think\Db;
use app\index\model\Maik;
use app\index\controller\Admin;
class Index extends controller
{
public function index(){
$data=new Maik();
$data->usenameinfo();
}
}
```
- 文件作用与框架文件说明
- 助手函数
- 系统常量(常用与自定义)
- 自定义配置文件extra(文件夹)
- 自定义配置文件.Env
- 路由pathinof 方式
- 路由强制模式(主要用这个)
- 路由的请求方法几种常用
- 路由参数规则设置
- 路由分组闭包与MISS路由
- 资源路由
- 请求Request和参数过滤
- session和cookie的配置及获取
- 判断路由请求类型及Request注册方法
- 响应数据方法create
- json xml jsonp助手函数
- 改命名空间(改成自定义的)
- (controller里常用的方法)success与error重定向的使用nignx重写的配置
- _initialize构造函数
- beforeAction前置操作使用
- 空路由与多级控制器使用
- 连接数据库操作(ORM)
- 助手函数db()
- 插入数据库操作(ORM)
- 查询数据库操作(ORM)
- (链式语法)where条件查询数据库(ORM)
- (链式语法)只查询某个字段或者排除某个字段链式操作field(ORM)
- (链式语法)排序查询order(ORM)
- (链式语法)查询条数limit(ORM)
- (链式语法)查询多条重复数据只返回一个distinct方法查询(ORM)
- (链式语法)获取mysql语句fetchSql(ORM)
- (链式语法)查询改表名输出alias(ORM)
- 连表查询join() (ORM)
- 数据库事务监听(ORM)
- (改数据)更新数据库(ORM)
- (改数据)更新数据库之自增与自减(ORM)
- 链式操作语法(ORM)
- (删除数据)删除数据(ORM)
- model模型创建方法
- (增)插入数据(Model)
- (查)查询数据(Model)
- 关于类 (杂项整理)
- (查)动态查询数据(Model)
- (改)更新数据库(Model)
- (删)删除数据(Model)
- 数据表时间戳(Model)
- view视图创建与渲染模板
- view视图输出与调用
- view输出常量与Session 与Cookie值
- view输出函数以及过滤
- view视图循环输出与if判断
- view各项配置以及修改(自定义资源路径)
- view各项配置以及修改(修改模板起始符)
- view 模板引入和自定义配置
- view模板继承
- thinkphp 实战命令行生成模块控制器模型视图
- Validate登录验证使用方法
- Validate验证场景分离写法
- Validate令牌验证
- captcha验证码配置
- 图片以及文件上传
- 资源路由下URL语法拼接模板循环的ID
- view三元运算符
- POST下的PUT请求(安全方法)
- 路由重定向
- 常见问题解决
- config文件
- 模板里使用路由路径
- 原生PHP在thinkphp中拓展
- 公共函数文件
- 5.1与5.0区别
- 5.1路由区别
- 5.1中间件
- 5.1微信支付