# 版本更新日志
[TOC=2,2]
## `V6.1.4`(2023年7月12日)
* 修復PHP錯誤中止時,日志沒有寫入、中間件end回調沒有執行
* 修正路由分組合并檢測
* 改進文件緩存鎖機制
* 修正`php think optimize:schema`指令當模型存在子目錄的錯誤
## `V6.1.3`(2023年5月22日)
主要改進了路由以及Session有效期。
* 改進ResourceRegister支持更多路由參數設置
* 改進資源路由注冊類
* 改進RedirectResponse
* 改進跨域路由
* 改進自動options路由
* options請求默認支持跨域
* 修正miss路由
* 完善session有效期問題
## `V6.0.15`(2023年5月22日)
主要對PHP8.2做了兼容處理,以及支持最新的ThinkORM3.0。
* 兼容PHP8.2
* 調整url build方法
* 支持使用ThinkORM 3.0版本
* 修正session有效期問題
## `V6.1.2`(2023年2月10日)
本版主要更新
* 兼容PHP`8.2`
* 移除基礎類中`Filesystem`申明屬性
* fix: container綁定參數時可變參數處理
* File類增加`setExtension`方法設置保存文件的實際后綴名
* `ValidateRule`注釋調整
* Fix: 參數類型為多個時導致的報錯
* 更新`think-orm`版本依賴支持`3.0`
## `V6.1.0`(2022年10月26日)
本版本主要更新:
* 移除核心對`think-filesystem`庫的依賴
## `V6.0.14LTS`(2022年10月26日)
本版本主要更新如下:
* 刪除廢棄方法
* 優化多語言檢測
* 修正命令行模式下的默認`request`
## `V6.0.13LTS`(2022年7月15日)
本版本主要更新如下:
* 改進Request類`filterValue`方法的兼容性
* 更新 prettify.js 為新的 cdn 地址
* FIX:remember緩存讀取問題修復
* 優化IDE支持
* Redirect remember 支持完整url設置
* 調整路由初始化位置
* Bugfix: 修復 PSR-7 Response 用法
* Fix switchLangSet missing setLangSet ([#2705](https://github.com/top-think/framework/pull/2705))
* 兼容 PHP 8.1
* Windows環境下文件訪問地址不正確
* 修復傳空值被忽略的情況
* 優化 IDE 支持,忽略 zend studio 的無關文件
* 增加 HEAD 路由支持,可以用來做健康檢測 head /health
## `V6.0.12LTS`(2022年1月21日)
本版本主要完善了命令行對`PHP8.1`的支持,并增加了路由的閉包檢測機制。
### 主要更新
* 改進緩存驅動`unserialize`方法參數類型限制
* 優化代碼使IDE友好
* 修正命令行對`PHP8.1`的兼容性
* 路由增加閉包檢測有效性
### `ThinkORM`主要更新包括:
* 完善sqlite驅動
* 修正Fetch類
* 改進多對多關聯
* 添加數據寫入對對象值的判斷處理
* 改進一對一關聯寫入
* 一對一關聯查詢綁定屬性調整
* 改進遠程一對多關聯查詢
* 優化模型數據處理
## `V6.0.11LTS`(2022年1月5日)
* 修正ENV讀取問題
## `V6.0.10LTS`(2021年12月31日)
本版本主要添加了`PHP8.1`的兼容支持,以及`ThinkORM`的大量改進。
### 主要更新:
* 兼容PHP8.1
* 改進cookie跨域刪除
* 改進多語言自動加載
* 改進url生成
* Filesystem 增加url方法 獲取文件訪問地址
* 文件上傳錯誤支持多語言
* 修正 make:controller 指令錯誤
* 發送cookie前先檢查請求頭是否已發送
* 改進多文件上傳的文件hashName沖突問題
* 調整thinkPath路徑賦值為真實絕對路徑 以避免特殊環境潛在隱患
* 支持 psr7 response
* 控制器中間件支持動態參數
* 改進env文件解析
### `ThinkORM`主要更新包括:
* 修正column方法
* Db和模型增加filter數據處理機制
* 調整json處理
* 修正sqlite驅動lock
* 獲取數據庫字段類型不區分大小寫
* 修正json方法
* 修正多對多關聯中間表數據
* 修正多對多模型
* 改進db類hidden visible append 方法處理機制
* 改進關聯的軟刪除查詢
* 完善獲取sql時的字符轉義
## `V6.0.9`(2021年07月22日)
本版本主要添加了事件監聽的通配符支持,并修正了框架的一處可能的序列化漏洞,同時對模型做了一些改進和優化。
* 更新`league/flysystem`版本
* 事件監聽支持通配符
* 支持時間字段的統一配置
* 改進`Request`類`all`方法
>[danger] 由于`league/flysystem`低版本存在漏洞,官方進行了安全升級,該修正使得框架的PHP版本依賴也提升到`7.2+`。
`ThinkORM`主要更新如下:
* 強化虛擬模型支持
* 改進模型事件和數據庫事件
* 改進動態獲取器處理
* 優化分頁查詢
* 改進聚合查詢
* 關聯增加`withoutField`方法
* 軟刪除`destroy`方法優化
## `V6.0.8`(2021年04月26日)
本版本主要添加了多環境變量配置文件支持
* 增加`LogRecord`事件
* 消除`Validate`類某處類型聲明警告
* 路由分組增加`dispatcher`方法,支持設置分組的調度
* `Request`類增加`all`方法支持獲取包括`File`在內的所有參數
* 改進環境變量定義支持多`env`文件讀取
## `V6.0.7`(2021年01月25日)
本版本主要針對上個版本做了一些路由修正,還意外收獲了一些性能提升,是一個建議更新的版本。
* 修正`Validate`類的PHP8兼容性
* 改進`redis`驅動的`append`方法
* 修正路由匹配檢測問題
* 優化路由變量正則規則生成
* 改進`responseView`的內容渲染
## `V6.0.6`(2021年01月11日)
本版本更新為兼容PHP8.0版本,并做了一些的改進和優化。
* 兼容`composer2 `生成配置文件
* 優化`optimize:schema`指令
* 增加`socket-log` 的 curl 超時設置
* 修正路由匹配
* 增加兼容`PHP8`處理
* 增加漢字識別匹配范圍 支持部分生僻字正則
* 改進響應文件請求時的緩沖清除
* 資源路由支持設置變量規則
* `$request->ip()` 方法兼容PHP8
* 修復驗證器`in`、`between`方法,使用數組,功能異常
* 修正含有`__make`的類實例化后未執行`invokeAfter`的問題
* 修復命令行創建中間件命名空間無效 bug
## `V6.0.5`(2020年10月27日)
本次更新為兼容Composer2.0做的特別更新版本,主要包含:
* 修正驗證類append方法
* 改進緩存標簽機制
* 改進閉包路由內使用request對象
* 改進文件緩存驅動
## `V6.0.4`(2020年9月28日)
本次更新為常規更新,主要包含:
### 新增
* [新增] 多語言支持解析`json`文件
* [新增] 增加`app.url`配置 用于命令行下構建`request
`
* [新增] 模型類增加`convertNameToCamel`屬性,支持數據格式轉為駝峰命名輸出
* [新增] `Relation`類增加`getForeignKey`和`getLocalKey`方法
### 修正
* [修正] 修復規則為空的bug
* [修正] 修正請求緩存中間件
* [修正] 改進驗證的`append`方法處理造成多次驗證的情況
* [修正] 改進資源路由對路由到類的支持
* [修正] 修正重定向路由的傳參
* [修正] 調整`http`初始化位置 防止容器綁定自身造成死循環
* [修正] 改進Redis驅動`select`參數處理
* [修正] 改進多對多關聯查詢
### 優化
* [優化] 優化`session `文件緩存 `path `獲取
* [優化] 改進路由參數檢測
* [優化] 改進路由參數獲取和變量檢查
* [優化] 路由的請求緩存可以通過`request_cache_key`配置參數關閉 便于開發模式
* [優化] 調整路由配置載入位置
* [優化] 改進路由緩存指令 取消`opis/closure`依賴
* [優化] 改進路由的額外參數檢測
* [優化] 改進`Config`類的`has`方法判斷
* [優化] 改進參數綁定對Null值的支持
* [優化] 改進`when`條件查詢的閉包處理
* [優化] 改進一對一關聯查詢對`order`排序的支持
## `V6.0.3`(2020年6月25日)
本次更新包含一個調試模式的系統信息安全隱患修正,建議更新。
### 主要更新:
* 異常提取`session`數據時先判斷是否使用了`session`
* 修正文件上傳類
* 取消`Event`類`withEvent`方法
* `FileResponse`支持是否強制下載設置
* `Request`對象支持`ArrayAccess`接口
* 日志的時間記錄增加微秒數據支持
* 調整 `Validate `場景執行優先級
* 優化App類`getDefaultRootPath`方法
* 修正全局中間件獲取`param`參數的BUG
* clear命令支持多層級目錄
* 修正日志記錄時區問題
* 修復助手函數`public_path`
* 中間件支持多個參數
* 路由檢測嚴格按照路由定義的順序執行
* `FileResponse`增加是否強制下載文件選項
* 修復自定義命令別名比系統別名長導致報錯問題
* 改進路由到視圖的變量傳遞
* 允許路由到一個自定義調度類
* 完善路由單元測試
* 默認路由也支持自動`OPTIONS`請求
* 改進路由調度
* 改進host和port的獲取支持代理
* `Request->port` 的返回類型轉化
* 改進模型生成模板
* 簡化默認異常頁面信息顯示
* 數據庫支持設置緩存store
* 改進`optimize:schema`指令
* 為清理指令添加僅刪除過期文件的選項
* 請求緩存增加預檢緩存配置 默認有效期1800秒
* 支持`header`方式自動偵測多語言
## `V6.0.2`(2020年1月13日)
本次更新包含一個可能的`Session`安全隱患修正,建議更新。
### 主要更新:
* 改進設置方法后綴后的操作名獲取問題
* 修正`optimize:schema`指令
* 修正`Request`類`inputData`處理
* 改進中間件方法支持傳多個參數
* 修正`sessionid`檢查的一處隱患
* 完善對15位身份證號碼的校驗
* 增加遠程多對多關聯支持
* 增加`MongoDb`的事務支持(`mongodb`版本V4.0+)
* 改進`insertAll`的`replace`支持
## `V6.0.1`(2019年12月24日)
### 主要更新:
* 完善`Request::withInput
`
* 修正Content-Type獲取途徑
* 改進 SocketLog 驅動
* 修正 ClientArg 獲取途徑
* 修復FileResponse的cookie空對象異常
* 支持渲染完整的異常鏈信息
* 異常頁面支持折疊調用堆棧信息
* 改進異常響應時內容的一致性
* 改進Error控制器對數字訪問的支持
* 修正redirect助手函數
* memcached delete 支持 timeout
* 修正redis驅動
* 改進memcache驅動
* 改進容器類`invokeMethod`方法
* 使用新的數組語法替代list
* 緩存默認的序列化方法改為serialize/unserialize
* Add Cookie SameSite(PHP>7.3)
* 擴展`Socket`驅動
* 修正異常頁面的模板文件
* 事件監聽去重
* 取消視圖日志
* 修正驗證jpg結尾的圖片報錯問題
* 改進Url生成
* 改進Url生成偽靜態后綴設置false的情況
* 改進File類型session讀取`gzcompress`問題
* 修復使用路由驗證后路由變量丟失的問題
* 修正多應用下路由目錄路徑
* 修復 `expand_level `選項異常
* 改進Cache類`remember`方法對依賴注入的支持
* 防止因日志配置異常時陷入死循環
* 模型支持動態設置數據庫連接
* 修正`column`方法的查詢緩存問題
* 改進Query類的`getAutoInc`方法
* 改進模型更新條件獲取
* 修正使用模型對象更改數據時忽略自定義的`suffix `和 `connection`參數
* 修正XA事務
* 規范`column`方法的查詢
## `V6.0.0`(2019年10月24日)
### 主要更新日志
* mobile 驗證簡化
* 控制器中間件支持傳參
* 增強中間件CheckRequestCache的實用性
* 改進容器invokeClass方法異常處理
* 控制器中間件過濾條件支持字符串
* 改進Route類getDomainBind方法
* 防止路由標識生成URL時生成空字符串
* 讓中間件CheckRequestCache只訪問一次臨界區
* 完善命中判斷
* 修正Request::port返回類型
* 增強高并發下session_id生成的唯一性
* 取消路由緩存功能及相關指令
* 修正 Request::remotePort 返回類型
* 完善跨域中間件的響應頭部
* 改進容器異常處理
* 改進生成文件模板
* 移除build指令納入擴展
* 改進Response增加cookie方法用于設置Cookie
* 修正生成URL不傳參數時,方法名為空
* 修復中間件CheckRequestCache使用過期數據
* 修復memcache驅動inc函數重復添加前綴問題
* 刪除Resonse類setCookie方法
* 使用session_create_id生成id,保證唯一性
* 修復中間件FormTokenCheck無法啟用問題
* 修正halt助手函數
## RC5(2019年10月13日)
`RC5`版本主要改進包括多應用模式獨立,以及中間件機制調整。
### 主要新特性
* 多應用模式獨立為擴展
* 中間件分組執行
* 增加路由配置文件的全局中間件定義
* 中間件支持優先級定義
* 中間件支持請求結束回調
* 中間件執行去重
* 模板根目錄免配置自動識別
* 改進智能事件訂閱
* 頁面Trace獨立為擴展
### 更新日志
* 修正request類isJson方法
* 提升swoole下多應用的性能
* 修正Cookie保存
* 改進字段緩存指令
* 修正路由正則生成
* 改進模板變量的全局賦值
* 改進filesystem
* 改進View 增加單元測試
* 修正php模板驅動
* 取消view_base配置,增加view_dir_name配置
* 完善Session及其單元測試
* 改進session助手函數支持獲取所有數據
* 完善中間件及其單元測試
* 改進事件智能訂閱
* 驗證錯誤信息支持數組
* 改進多語言自動偵測
* 改進自動多語言
* 改進事件觀察者支持事件前綴
* 去除Cache返回類型限制
* 多應用配置讀取優先級調整
* 多應用路由改進
* 改進批量驗證的錯誤信息返回
* 頁面Trace中間件移除 改為擴展
* 改進session初始化中間件
* 修正默認URL訪問
* 修正url生成對域名綁定的支持
* 改進中間件機制 全局、路由和控制器中間件分開
### 調整
* 獲取當前應用名改為`app('http')->getName()`
## RC4(2019年8月16日)
`RC4`版本主要改進包括`ORM`庫獨立,日志系統增加多通道支持,緩存、日志、數據庫的配置文件統一調整為多通道模式,并作了大量的改進和修正。
### 主要新特性
* 數據庫和模型改為獨立的`think-orm`庫
* 模型關聯功能增強
* 日志支持多通道、并統一命令行和WEB日志格式
* 增加`Filesystem`組件
* 增加容器對象實例化回調機制
* 路由注解獨立為`think-annotation`庫
* 多應用模式下路由定義支持納入應用目錄
### 功能改進
* 改進路由類的配置讀取
* 改進`parseLike`查詢
* 改進`ViewResponse`類增加內容渲染輸出支持
* 增加`display`助手函數
* 驗證類`maker`方法支持注入擴展驗證規則
* 改進事件觸發的對象傳入
* 改進`Console/Table`類
* 改進關聯定義對查詢構造器的支持
* 關聯類增加`withField`和`withLimit`方法,并取消`Query`類`withField`方法
* 增加延遲關聯查詢對`withLimit`的支持
* 改進模型`toArray`方法
* 改進Url生成的域名參數
* 改進 `make:command`指令生成
* 緩存有效期支持`DateInterval
`
* 改進Query類find方法
* 改進`json`查詢
* 改進查詢緩存
* 增加`filesystem`組件
* 改進跨域請求
* 改進路由檢測緩存配置
* 改進注解路由的文件寫入
* 路由注冊支持注冊`options`請求類型
* 改進重定向路由檢測
* 改進模型的`hasWhere`方法對閉包查詢條件的支持完善
* 增加`time_query_rule`數據庫配置參數 用于自定義時間查詢規則
* 改進時間字段類型的自動識別
* 改進`redis`驅動
* 容器對象增加`invoke`回調機制
* 改進多對多關聯
* 資源路由增加`withModel`和`withValidate `對各個路由設置不同的模型綁定和驗證
* 改進`getLastInsID`方法
* 日志類調整 支持多通道寫入
* 改進模型輸出
* 支持單獨關閉某個通道的日志寫入
* 取消部署模式下 不寫入調試日志的功能 用調試級別設置單獨的日志渠道來替代
* 改進日志記錄格式
* 支持日志輸出格式化
* 改進資源路由
* 改進命令行日志實時寫入
* 日志通道支持單獨設置level配置參數
* Log類調整優化
* 增加`paginateX`查詢用于大數據分頁查詢
* 數據集增加`first`和`last`方法
* 改進`response/View`類的`assign`方法
* 改進請求參數獲取問題
* 改進`pathinfo`方法
* 增加一些路徑助手函數
* 改進多級控制器訪問
* Log類支持`__call`方法
* 多應用模式的路由定義支持放入單獨的應用目錄
* 模型增加依賴注入支持
* 改進模型事件
* 改進頁面`Trace`機制
* 改進`validate`助手函數,支持設置驗證失敗后是否拋出異常
* 改進容器`bind`方法
* 改進Redis Session驅動
* 改進日志記錄的空行問題
* 改進`RedirectResponse
`
* 改進緩存驅動
* 改進`think optimize:schema` 指令
* Url類增加https方法
* 改進`isPjax`判斷
* 改進Db類配置獲取
### 問題修正
* 修正模型屬性獲取
* 修正Request類的過濾功能
* 修正`subDomain
`方法
* 修正`input`助手函數
* 修正模型`refresh`方法
* 修正關聯統計不使用子查詢的方式
* 修正Request類`root`方法
* 修正緩存有效期處理
* 修正`MorphTo`關聯
* 修正緩存標簽
* 修正mysql驅動`insert`方法
* 修正Db類`connect`方法
* 修正`allowCrossDomain`方法
* 修正Query類`chunk`方法
* 修正分組跨域
* 修正關聯預載入查詢
* 修正時間字段寫入
* 修正驗證類`checkSize
`
* 修正多對多關聯閉包
* 修正RuleName類`setRule`方法
* 修正`whereTime`查詢
* 修正`request`助手函數
* 修正日志關閉配置
* 修復對多字節字符的兼容性
### 用法調整
* 模型切換后綴方法`switch`更改為`suffix
`
* 取消Query類的`fetchArray`方法
* `select`查詢方法默認返回數據集對象
* 取消`optimize:config`指令
* 調整數據庫和緩存配置文件格式 默認采用多類型支持 方便切換
* Cache類的`init`和`connect`方法取消 并入`store`方法
* `cache`助手函數調整
* `cache`助手函數取消初始化用法
* `cache`助手函數留空返回Cache對象
* 調整調試模式檢測位置
* 默認時間字段類型改為`timestamp
`
* 取消Model類`getConnection`和`setConnection`方法
* 注解路由移出核心,注解相關功能使用`topthink/think-annotation
`
* 改進路由 取消`url_convert`配置參數
* 取消`route:build`指令
* 調整默認模板目錄為根目錄`view
`
* 取消默認的請求日志記錄 在項目里面自己添加
* 統一`find`查詢必須使用查詢條件
* 擴展的service配置文件默認放到vendor目錄下
* 廢除`LogLevel`事件
* 取消App類的序列化方法
* 控制臺的`user`配置改為通過靜態方法設置當前執行用戶
## RC3(2019年6月3日)
RC3版本主要改進和優化了系統內置中間件,改進了一些用法和體驗,并且把不常用的驅動移出核心改為擴展方式提供。
### 主要新特性
* 增加`whereWeek`日期查詢
* 自增ID獲取支持類型自動轉換
* 當前請求記錄匹配路由規則
* 增加`requireWithout`驗證規則
* 優化路由ext和name方法以及URL生成
* 增加項目自定義類
* URL生成使用對象方式操作
* 修改器改進
* `dump`/`halt`助手函數調整支持輸出多個變量
* 關聯自動更新
* 模型數據集增加`delete`和`update`方法
* 模型支持表后綴以及動態切換
* 注解路由支持給某個路由指定所屬分組
* 多語言支持分組定義
* 支持自定義加載語言文件
* 多語言定義支持YML格式
* 緩存標簽改進
* 緩存類增加`push`方法
* Cookie保存時間支持DateTimeInterface
* 增加表單令牌中間件
* 控制器支持__call方法
* 增加`deny_app_list`配置參數
* 控制器中間件only和except定義不區分大小寫
* `app_map`支持指定泛應用映射
### 問題修正
* 修正參數綁定的浮點型精度問題
* 修正軟刪除
* 修正模型的數據庫連接
* 修正`RedirectResponse
`
* 修正Session類`flush`方法
* 修正JSON字段參數綁定
* 修正`make:controller`指令生成
* 修正Cache類的`get`方法默認值
* 修正域名綁定
* 修正關聯模型的動態獲取器
* 修正模型`dateFormat`屬性方法
* 修正url生成對多入口的支持
* 修正ini配置文件格式的布爾值轉換問題
* 修正路由延遲解析全局配置無效的問題
* 修正路由緩存問題
* 修正關聯`update`操作
* 修正`Relation::$selfRelation`默認為`null`,導致`Relation::isSelfRelation()`方法報錯
* 修正`redis`緩存驅動
* 修正事件智能訂閱`observe`方法
* 修正模型字段定義對日期查詢無效的問題
* 修正Console類`getNamespaces`方法
* 修正`where`查詢方法傳入Query對象的時候缺少`bind`數據的問題
* 修正request類`method`方法
* 修正`route:list`指令
* 修正`Collection`類`load`方法
* 修正`redis`驅動的端口類型
* 修正`session`數據序列化使用JSON處理的問題
* 修正分組路由合并解析
* 修正模型的`hidden`方法隱藏關聯模型的問題
* 修正關聯查詢關聯鍵為空的錯誤
* 修正返回204狀態碼的響應判斷
* 修正`Request`類`has`方法對`env`和`session`的支持
* 修正`provider.php`文件無效問題
* 修正關聯查詢的部分問題
* 修正validate助手函數支持指定驗證器類
* 修正驗證類`getValidateType`方法
* 修正入口單獨開啟調試模式
* 修正加載Composer應用
### 用法調整
* 頁面trace中間件僅在調試模式有效
* `Socket`日志驅動移出核心
* `PostgreSQL`、`Sqlite`和`SqlServer`驅動移出核心
,改為擴展
* 取消內置`think\Controller`基類
* `Yaconf`支持移出核心 納入擴展`think-yaconf`
* 字段排除改為`withoutField`方法
* 取消`useGlobalScope`方法增加`withoutGlobalScope`方法
* 更改默認生成的中間件位置
* 加載默認語言包無需開啟多語言中間件
* `Cookie`類恢復`get`和`has`方法支持
* `token`助手函數調整
* 全局請求緩存參數調整
* 統一中間件調用傳參,不支持`:`分割傳參
* 緩存數據統一進行序列化后存儲
* Cache類rm方法更改為delete方法
* validate助手函數返回Validate對象實例,參數改變
### 廢棄用法
* 取消多語言的`auto_detect`配置
* 取消`session`類的`auto_start`配置參數和`boot`方法
* 廢棄`Where`數組對象查詢
* 取消模型事件觀察者
* 取消`JumpResponse`及`success`/`error`/`result`等方法和助手函數
* 取消表達式查詢解析擴展及`think\db\Expression`類
* 廢棄模型自動完成功能,使用模型事件替代
* 取消`cookie`的`prefix`參數
* 取消一系列不推薦使用的助手函數
* 取消`optimize:facade` `optimize:model`指令 改為擴展方式
* 取消命令行執行URL
* 刪除`Config`類`__get` 和 `__isset` 方法
## RC2(2019年4月22日)
相比較`RC1`版本更新調整較大,主要更新如下:
* 底層架構針對協程做優化調整
* 增加WEB應用管理類`Http`
* 增加應用初始化服務和服務注冊機制
* 查詢事件和模型事件使用事件系統接管
* `Session`類重構,不再使用PHP內置會話
* `Cookie`類僅支持設置和寫入,不再支持讀取
* 取消`Config`類的動態設置功能
* 部分核心功能中間件化(頁面Trace、多語言、請求緩存和Session初始化)
* 取消慣例配置文件
* 增加驅動接口規范驅動開發
* 改進Db類和查詢類
* 精簡一些不必要的類庫
* 改進路由注冊
* 由于異常的需要`View`類改為內置,但默認僅支持原生PHP模板
* 大量細節改進和修正
## RC1(2019年2月14日)
* 改進Url類`build`方法
* 修復獲取當前頁碼數據類型
* 修正`parseKey`方法傳入數值的情況
* 改進`optimize:config`指令對`declare`申明的支持
* 取消URL參數模式配置
* 增加`optimize:facade`指令用于生成`facade`類的方法注釋
* 取消`Query`類的`extend`方法
* 原來的`Expression`類更改為`Raw`類
* 增加新的`Expression`類用于表達式查詢擴展
* `Collection`類增加`whereLike`/`whereNotLike`/`whereIn`/`whereNotIn`/`whereBetween`/`whereNotBetween`等快捷方法
* Query類的`raw`方法移動到Db類
* 取消`Request`類的`hook`方法
* 修正`Route::view`方法
* 優化模型獲取器方法
* 多對多關聯的`pivotDataName`方法更名為`name`方法
* Query類增加`partition`/`duplicate`/`extra`方法
* 改進mysql驅動支持分區和`duplicate`以及額外參數
* mysql驅動的`insert`方法改用更清晰的`insert set`語法
* 修正`Event`類`bind`屬性定義
* 修正驗證類的`append`一處bug
* 改進`Query`類`update`方法支持讀取模型的更新條件
* 取消模型類的`getUpdateWhere`方法統一使用`getWhere`方法
* 改進query類的`fetchArray`方法處理
* 改進路由類取消`app`屬性
* 增加`think\facade\RuleName`類
* 增加`whereFieldRaw`查詢方法
* 改進自動多應用名稱獲取
* App類增加`withEvent`方法支持關閉事件機制
* 改進`Dispatch`類對`var_dump`的支持
* 改進`hasMany`的`withCount`自關聯
* 修正純數字檢測參數類型轉換問題
* 修正`raw`助手函數
* `mysql`支持`find_in_set`查詢
* 改進`url`方法對自動多應用的支持
- 序言
- 基礎
- 安裝
- 開發規范
- 目錄結構
- 配置
- 架構
- 請求流程
- 架構總覽
- 入口文件
- 多應用模式
- URL訪問
- 容器和依賴注入
- 服務
- 門面
- 中間件
- 事件
- 路由
- 路由定義
- 變量規則
- 路由地址
- 路由參數
- 路由中間件
- 路由分組
- 資源路由
- 注解路由
- 路由綁定
- 域名路由
- MISS路由
- 跨域請求
- URL生成
- 控制器
- 控制器定義
- 基礎控制器
- 空控制器
- 資源控制器
- 控制器中間件
- 請求
- 請求對象
- 請求信息
- 輸入變量
- 請求類型
- HTTP頭信息
- 偽靜態
- 參數綁定
- 請求緩存
- 響應
- 響應輸出
- 響應參數
- 重定向
- 文件下載
- 數據庫
- 連接數據庫
- 分布式數據庫
- 查詢構造器
- 查詢數據
- 添加數據
- 更新數據
- 刪除數據
- 查詢表達式
- 鏈式操作
- where
- table
- alias
- field
- strict
- limit
- page
- order
- group
- having
- join
- union
- distinct
- lock
- cache
- cacheAlways
- comment
- fetchSql
- force
- partition
- failException
- sequence
- replace
- extra
- duplicate
- procedure
- 聚合查詢
- 分頁查詢
- 時間查詢
- 高級查詢
- 視圖查詢
- JSON字段
- 子查詢
- 原生查詢
- 獲取查詢參數
- 查詢事件
- 獲取器
- 事務操作
- 存儲過程
- 數據集
- 數據庫驅動
- 模型
- 定義
- 模型字段
- 新增
- 更新
- 刪除
- 查詢
- 查詢范圍
- JSON字段
- 獲取器
- 修改器
- 搜索器
- 數據集
- 自動時間戳
- 只讀字段
- 軟刪除
- 類型轉換
- 模型輸出
- 模型事件
- 模型關聯
- 一對一關聯
- 一對多關聯
- 遠程一對多
- 遠程一對一
- 多對多關聯
- 多態關聯
- 關聯預載入
- 關聯統計
- 關聯輸出
- 虛擬模型
- 視圖
- 模板變量
- 視圖過濾
- 模板渲染
- 模板引擎
- 視圖驅動
- 錯誤和日志
- 異常處理
- 日志處理
- 調試
- 調試模式
- Trace調試
- SQL調試
- 變量調試
- 遠程調試
- 驗證
- 驗證器
- 驗證規則
- 錯誤信息
- 驗證場景
- 路由驗證
- 內置規則
- 表單令牌
- 注解驗證
- 雜項
- 緩存
- Session
- Cookie
- 多語言
- 上傳
- 命令行
- 啟動內置服務器
- 查看版本
- 自動生成應用目錄
- 創建類庫文件
- 清除緩存文件
- 生成數據表字段緩存
- 生成路由映射緩存
- 輸出路由定義
- 自定義指令
- Debug輸出級別
- 擴展庫
- 數據庫遷移工具
- Workerman
- think助手工具庫
- 驗證碼
- Swoole
- 附錄
- 助手函數
- 升級指導
- 更新日志