# 模型
>[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實用筆記