# 模型
>[info] 模型除了支持db方法外,还增加许多针对性功能,返回数据集,支持更多数据处理功能,比如结果过滤,增加新字段,数据自动完成,转换,多表关联等
1. 如表 test如下
| id|name |
| --- | --- |
| 1 | one |
| 2 | two |
| 3 | three |
>[info] 模型名称 为*TestModel.php*
2. 过滤
>[info]找出等于1,3的记录
```
TestModel::select()->filter(function($item){
return in_array($item['id'],[1,3]);
});
//结果如下
array(2) {
[0] => array(2) {
["id"] => int(1)
["name"] => string(3) "one"
}
[2] => array(2) {
["id"] => int(3)
["name"] => string(5) "three"
}
}
```
3. 临时增加一个字段
>[info]增加字段 title ,等于id+name
```
TestModel::select()->append(['title'])->withAttr('title',function($val,$item){
return $item['id'].'-'.$item['name'];
});
//结果如下
array(3) {
[0] => array(3) {
["id"] => int(1)
["name"] => string(3) "one"
["title"] => string(5) "1-one"
}
[1] => array(3) {
["id"] => int(2)
["name"] => string(3) "two"
["title"] => string(5) "2-two"
}
[2] => array(3) {
["id"] => int(3)
["name"] => string(5) "three"
["title"] => string(7) "3-three"
}
}
```
- 文档说明
- 5.1对比5.0.X版本需要注意点
- 待解答问题QA
- THINKPHP基础
- 常用技巧
- tp5.1系统信息
- 容器、Facade、依赖注入
- 其它要点记录
- 数据库与模型
- 数据集
- AQ问题集
- API开发
- restful开发
- restful测试之ZClient开发
- api开发
- 缓存
- 组件开发
- 采集组件ZSnoopy
- restful测试组件ZClient
- thinkphp各功能模块
- thinkphp-Log
- 队列thinkphp-Queue
- THINKPHP扩展
- 单元测试
- 类库库迁移工具Migration
- 命令行
- 关于console扩展要点
- 附录
- 第三方实用PHP库
- 实用IP库
- phpQuery库
- Guzzle库
- Markdown解释库Parsedown
- 上线的项目debug组件
- nette/utils实用函数库
- 推荐框架DolphinPHP
- Thinkphp之widget
- 表单组件form
- 前端框架推荐
- 推荐框架fastadmin
- PHP7最新语法
- 前端框架
- Echart
- mysql触发器
- PHP实用技巧与函数
- composer实用笔记