您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關ThinkPHP5.0版本的詳細介紹的內容。小編覺得挺實用的,因此分享給大家做個參考。一起跟隨小編過來看看吧。
ThinkPHP5.0版本是一個顛覆和重構版本,官方團隊歷時十月,傾注了大量的時間和精力,采用全新的架構思想,引入了更多的PHP新特性,優化了核心,減少了依賴,實現了真正的惰性加載,支持composer,并針對API開發做了大量的優化,包括路由、日志、異常、模型、數據庫、模板引擎和驗證等模塊都已經重構,不適合原有3.2項目的升級,請慎重考慮商業項目升級,但絕對是新項目的首選(無論是WEB還是API開發)。
[ 特性 ]
主要特性包括:
--------------------------------------------------------------
規范:遵循PSR-2、PSR-4規范,Composer及單元測試支持;
嚴謹:異常嚴謹的錯誤檢測和安全機制,詳細的日志信息,為你的開發保駕護航;
靈活:減少核心依賴,擴展更靈活、方便,支持命令行指令擴展;
API友好:出色的性能和REST支持、遠程調試,更好的支持API開發;
高效:惰性加載,及路由、配置和自動加載的緩存機制;
ORM:重構的數據庫、模型及關聯,MongoDb支持;
--------------------------------------------------------------
支持ThinkPHP5的用戶請到 Github 給我們一個`star` ^_^
相對于RC4版本,更新如下:
[ 請求和路由 ]
Request對象支持動態綁定屬性
定義了路由規則的URL原地址禁止訪問
改進路由規則存儲結構
路由分組功能增強,支持嵌套和虛擬分組
路由URL高效反解
改進Request對象param方法獲取優先級
路由增加name方法設置和獲取路由標識
增加MISS和AUTO路由規則
Route類增加auto方法 支持注冊一個自動解析URL的路由
路由規則支持模型綁定
路由變量統一使用param方法獲取
路由規則標識功能和自動標識
增加生成路由緩存指令 optimize:route
Request對象增加route方法單獨獲取路由變量
Request對象的param get post put request delete server cookie env方法的第一個參數傳入false 則表示獲取原始數據 不進行過濾
改進自動路由標識生成 支持不同的路由規則 指向同一個路由標識,改進Url自動生成對路由標識的支持
改進Request類 filter屬性的初始化
改進Request類的isAjax和isPjax方法
Request類增加token方法
路由配置文件支持多個 使用 route_config_file 配置參數配置
域名綁定支持https檢測
改進域名綁定 支持同時綁定模塊和其他 支持綁定到數組定義的路由規則,取消域名綁定到分組
路由規則增加PATCH請求類型支持
增加route_complete_match配置參數設置全局路由規則定義是否采用完整匹配 可以由路由規則的參數complete_match 進行覆蓋
改進路由的 后綴參數識別 優先于系統的偽靜態后綴參數
Url類增加root方法用于指定當前root地址(不含域名)
改進Url生成對可選參數的支持
[ 數據庫 ]
查詢條件自動參數綁定
改進分頁方法支持參數綁定
Query類的cache方法增加緩存標簽參數
Query類的update和delete方法支持調用cache方法 會自動清除指定key的緩存 配合查詢方法的cache方法一起使用
改進Query類的延遲寫入方法
Query類的column和value方法支持fetchsql
改進日期查詢方法
改進存儲過程方法exec的支持
改進Connection類的getLastInsID方法獲取
記錄數據庫的連接日志(連接時間和DSN)
改進Query類的select方法的返回結果集判斷
Connection類增加getNumRows方法
數據庫事務方法取消返回值
改進Query類的chunk方法對主鍵的獲取
改進當數據庫驅動類型使用完整命名空間的時候 Query類的builder方法的問題
[ 模型 ]
增加軟刪除功能
關聯模型和預載入改進
關聯預載入查詢閉包支持更多的連貫操作
完善savell方法支持更新和驗證
關聯定義統一返回Relation類
Model類的has和hasWhere方法對join類型的支持
Model類的data方法 批量賦值數據的時候 清空原始數據
Model類的get方法第三個參數傳入true的時候會自動更新緩存
Model類增加只讀字段支持
Model類增加useGlobalScope方法設置是否啟用全局查詢范圍
Model類的base方法改為靜態定義 全局多次調用有效
Model類支持設定主鍵、字段信息和字段類型,不依賴自動獲取,提高性能
Model類的data方法 支持修改器
改進Relation類對非數字類型主鍵的支持
改進Relation類的一對多刪除
修正Relation類的一對多關聯預載入查詢
[ 日志和緩存 ]
支持日志類型分離存儲
日志允許設置記錄級別
增加緩存標簽功能
緩存類增加pull方法用于獲取并刪除
cache助手函數增加tag參數
簡化日志信息,隱藏數據庫密碼
增加cache/session redis驅動的庫選擇邏輯;
memcached驅動的配置參數支持option參數
調試模式下面 日志記錄增加頁面的header和param參數記錄
memcached緩存驅動增加連接賬號密碼參數
緩存支持設置complex類型 支持配置多種緩存并用store切換
緩存類增加tag方法 用于緩存標簽設置 clear方法支持清除某個緩存標簽的數據
File類型日志驅動支持設置單獨文件記錄不同的日志級別
改進文件緩存和日志的存儲文件名命名規范
緩存類增加inc和dec方法 針對數值型數據提供自增和自減操作
Cache類增加has方法 get方法支持默認值
[ 其它 ]
視圖類支持設置模板引擎參數
增加表單令牌生成和驗證
增加中文驗證規則
增加image和文件相關驗證規則
重定向Response對象支持with方法隱含傳參
改進Session類自動初始化
session類增加pull方法用于獲取并刪除
增加Env類用于獲取環境變量
Request類get/post/put等更改賦值后param方法依然有效
改進Jump跳轉地址支持Url::build 解析
優化Hook類
應用調試模式和頁面trace支持環境變量設置
config助手函數支持 config('?name') 用法
支持使用BIND_MODULE常量的方式綁定模塊
入口文件自動綁定模塊功能
改進驗證異常類的錯誤信息和模板輸出,支持批量驗證的錯誤信息拋出
完善console 增加output一些常用的方法
增加token助手函數 用于在頁面快速顯示令牌
增加halt方法用于變量調試并中斷輸出
改進Validate類的number驗證規則 和 integer區分開
optimize:autoload增加對extend擴展目錄的掃描
改進Validate類的boolean驗證規則 支持表單數據
改進cookie助手函數支持 判斷是否存在某個cookie值
改進abort助手函數 支持拋出HttpResponseException異常
改進File類增加對上傳錯誤的處理
改進File類move方法的返回對象增加上傳表單信息,增加獲取文件散列值的方法
改進File類的move方法的返回對象改為返回File對象實例
增加clear和optimize:config 指令
改進File類和Validate類的圖像文件類型驗證
控制器的操作方法支持注入Request之外的對象實例
Request類 param(true) 支持獲取帶文件的數據
input助手函數第一個參數增加默認值
Validate類增加image驗證規則 并改進max min length支持多種數據類型
json輸出時數據編碼失敗后拋出異常
[ 調整 ]
廢除路由映射(靜態路由)定義
取消url_deny_suffix配置 改由路由的deny_ext參數設置
模型save方法返回值改為影響的記錄數,取消getId參數
Request對象controller方法返回駝峰控制器名
控制器前置操作方法不存在則拋出異常
Loader類db方法增加name標識參數
db助手函數增加第三個參數用于指定連接標識
Sqlsrv驅動默認不對數據表字段進行小寫轉換
移除sae驅動 改為擴展包
Oracle驅動移出核心包
Firebird驅動移出核心包
取消別名定義文件alias.php
配置參數讀取的時候取消環境變量判斷 需要讀取環境變量的時候使用Env類
環境變量定義文件更改為 .env 由原來的PHP數組改為ini格式定義(支持數組方式)
狀態配置和擴展配置的加載順序調整 便于狀態配置文件中可以更改擴展配置的參數
取消域名綁定到路由分組功能
控制器類的success和error方法url參數支持傳入空字符串,則不做任何處理
控制器的error success result redirect方法均不需要使用return
創建目錄的權限修改為0644
感謝各位的閱讀!關于ThinkPHP5.0版本的詳細介紹就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。