溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

ThinkPHP5.0版本的詳細介紹

發(fā)布時間:2020-11-11 10:52:53 來源:億速云 閱讀:264 作者:小新 欄目:編程語言

這篇文章給大家分享的是有關(guān)ThinkPHP5.0版本的詳細介紹的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考。一起跟隨小編過來看看吧。

ThinkPHP5.0版本是一個顛覆和重構(gòu)版本,官方團隊歷時十月,傾注了大量的時間和精力,采用全新的架構(gòu)思想,引入了更多的PHP新特性,優(yōu)化了核心,減少了依賴,實現(xiàn)了真正的惰性加載,支持composer,并針對API開發(fā)做了大量的優(yōu)化,包括路由、日志、異常、模型、數(shù)據(jù)庫、模板引擎和驗證等模塊都已經(jīng)重構(gòu),不適合原有3.2項目的升級,請慎重考慮商業(yè)項目升級,但絕對是新項目的首選(無論是WEB還是API開發(fā))。

[ 特性 ]

主要特性包括:

--------------------------------------------------------------

規(guī)范:遵循PSR-2、PSR-4規(guī)范,Composer及單元測試支持;

嚴謹:異常嚴謹?shù)腻e誤檢測和安全機制,詳細的日志信息,為你的開發(fā)保駕護航;

靈活:減少核心依賴,擴展更靈活、方便,支持命令行指令擴展;

API友好:出色的性能和REST支持、遠程調(diào)試,更好的支持API開發(fā);

高效:惰性加載,及路由、配置和自動加載的緩存機制;

ORM:重構(gòu)的數(shù)據(jù)庫、模型及關(guān)聯(lián),MongoDb支持;

--------------------------------------------------------------

支持ThinkPHP5的用戶請到 Github 給我們一個`star` ^_^

相對于RC4版本,更新如下:

[ 請求和路由 ]

Request對象支持動態(tài)綁定屬性

定義了路由規(guī)則的URL原地址禁止訪問

改進路由規(guī)則存儲結(jié)構(gòu)

路由分組功能增強,支持嵌套和虛擬分組

路由URL高效反解

改進Request對象param方法獲取優(yōu)先級

路由增加name方法設(shè)置和獲取路由標(biāo)識

增加MISS和AUTO路由規(guī)則

Route類增加auto方法 支持注冊一個自動解析URL的路由

路由規(guī)則支持模型綁定

路由變量統(tǒng)一使用param方法獲取

路由規(guī)則標(biāo)識功能和自動標(biāo)識

增加生成路由緩存指令 optimize:route

Request對象增加route方法單獨獲取路由變量

Request對象的param get post put request delete server cookie env方法的第一個參數(shù)傳入false 則表示獲取原始數(shù)據(jù) 不進行過濾

改進自動路由標(biāo)識生成 支持不同的路由規(guī)則 指向同一個路由標(biāo)識,改進Url自動生成對路由標(biāo)識的支持

改進Request類 filter屬性的初始化

改進Request類的isAjax和isPjax方法

Request類增加token方法

路由配置文件支持多個 使用 route_config_file 配置參數(shù)配置

域名綁定支持https檢測

改進域名綁定 支持同時綁定模塊和其他 支持綁定到數(shù)組定義的路由規(guī)則,取消域名綁定到分組

路由規(guī)則增加PATCH請求類型支持

增加route_complete_match配置參數(shù)設(shè)置全局路由規(guī)則定義是否采用完整匹配 可以由路由規(guī)則的參數(shù)complete_match 進行覆蓋

改進路由的 后綴參數(shù)識別 優(yōu)先于系統(tǒng)的偽靜態(tài)后綴參數(shù)

Url類增加root方法用于指定當(dāng)前root地址(不含域名)

改進Url生成對可選參數(shù)的支持

[ 數(shù)據(jù)庫 ]

查詢條件自動參數(shù)綁定

改進分頁方法支持參數(shù)綁定

Query類的cache方法增加緩存標(biāo)簽參數(shù)

Query類的update和delete方法支持調(diào)用cache方法 會自動清除指定key的緩存 配合查詢方法的cache方法一起使用

改進Query類的延遲寫入方法

Query類的column和value方法支持fetchsql

改進日期查詢方法

改進存儲過程方法exec的支持

改進Connection類的getLastInsID方法獲取

記錄數(shù)據(jù)庫的連接日志(連接時間和DSN)

改進Query類的select方法的返回結(jié)果集判斷

Connection類增加getNumRows方法

數(shù)據(jù)庫事務(wù)方法取消返回值

改進Query類的chunk方法對主鍵的獲取

改進當(dāng)數(shù)據(jù)庫驅(qū)動類型使用完整命名空間的時候 Query類的builder方法的問題

[ 模型 ]

增加軟刪除功能

關(guān)聯(lián)模型和預(yù)載入改進

關(guān)聯(lián)預(yù)載入查詢閉包支持更多的連貫操作

完善savell方法支持更新和驗證

關(guān)聯(lián)定義統(tǒng)一返回Relation類

Model類的has和hasWhere方法對join類型的支持

Model類的data方法 批量賦值數(shù)據(jù)的時候 清空原始數(shù)據(jù)

Model類的get方法第三個參數(shù)傳入true的時候會自動更新緩存

Model類增加只讀字段支持

Model類增加useGlobalScope方法設(shè)置是否啟用全局查詢范圍

Model類的base方法改為靜態(tài)定義 全局多次調(diào)用有效

Model類支持設(shè)定主鍵、字段信息和字段類型,不依賴自動獲取,提高性能

Model類的data方法 支持修改器

改進Relation類對非數(shù)字類型主鍵的支持

改進Relation類的一對多刪除

修正Relation類的一對多關(guān)聯(lián)預(yù)載入查詢

[ 日志和緩存 ]

支持日志類型分離存儲

日志允許設(shè)置記錄級別

增加緩存標(biāo)簽功能

緩存類增加pull方法用于獲取并刪除

cache助手函數(shù)增加tag參數(shù)

簡化日志信息,隱藏數(shù)據(jù)庫密碼

增加cache/session redis驅(qū)動的庫選擇邏輯;

memcached驅(qū)動的配置參數(shù)支持option參數(shù)

調(diào)試模式下面 日志記錄增加頁面的header和param參數(shù)記錄

memcached緩存驅(qū)動增加連接賬號密碼參數(shù)

緩存支持設(shè)置complex類型 支持配置多種緩存并用store切換

緩存類增加tag方法 用于緩存標(biāo)簽設(shè)置 clear方法支持清除某個緩存標(biāo)簽的數(shù)據(jù)

File類型日志驅(qū)動支持設(shè)置單獨文件記錄不同的日志級別

改進文件緩存和日志的存儲文件名命名規(guī)范

緩存類增加inc和dec方法 針對數(shù)值型數(shù)據(jù)提供自增和自減操作

Cache類增加has方法 get方法支持默認值

[ 其它 ]

視圖類支持設(shè)置模板引擎參數(shù)

增加表單令牌生成和驗證

增加中文驗證規(guī)則

增加image和文件相關(guān)驗證規(guī)則

重定向Response對象支持with方法隱含傳參

改進Session類自動初始化

session類增加pull方法用于獲取并刪除

增加Env類用于獲取環(huán)境變量

Request類get/post/put等更改賦值后param方法依然有效

改進Jump跳轉(zhuǎn)地址支持Url::build 解析

優(yōu)化Hook類

應(yīng)用調(diào)試模式和頁面trace支持環(huán)境變量設(shè)置

config助手函數(shù)支持 config('?name') 用法

支持使用BIND_MODULE常量的方式綁定模塊

入口文件自動綁定模塊功能

改進驗證異常類的錯誤信息和模板輸出,支持批量驗證的錯誤信息拋出

完善console 增加output一些常用的方法

增加token助手函數(shù) 用于在頁面快速顯示令牌

增加halt方法用于變量調(diào)試并中斷輸出

改進Validate類的number驗證規(guī)則 和 integer區(qū)分開

optimize:autoload增加對extend擴展目錄的掃描

改進Validate類的boolean驗證規(guī)則 支持表單數(shù)據(jù)

改進cookie助手函數(shù)支持 判斷是否存在某個cookie值

改進abort助手函數(shù) 支持拋出HttpResponseException異常

改進File類增加對上傳錯誤的處理

改進File類move方法的返回對象增加上傳表單信息,增加獲取文件散列值的方法

改進File類的move方法的返回對象改為返回File對象實例

增加clear和optimize:config 指令

改進File類和Validate類的圖像文件類型驗證

控制器的操作方法支持注入Request之外的對象實例

Request類 param(true) 支持獲取帶文件的數(shù)據(jù)

input助手函數(shù)第一個參數(shù)增加默認值

Validate類增加image驗證規(guī)則 并改進max min length支持多種數(shù)據(jù)類型

json輸出時數(shù)據(jù)編碼失敗后拋出異常

[ 調(diào)整 ]

廢除路由映射(靜態(tài)路由)定義

取消url_deny_suffix配置 改由路由的deny_ext參數(shù)設(shè)置

模型save方法返回值改為影響的記錄數(shù),取消getId參數(shù)

Request對象controller方法返回駝峰控制器名

控制器前置操作方法不存在則拋出異常

Loader類db方法增加name標(biāo)識參數(shù)

db助手函數(shù)增加第三個參數(shù)用于指定連接標(biāo)識

Sqlsrv驅(qū)動默認不對數(shù)據(jù)表字段進行小寫轉(zhuǎn)換

移除sae驅(qū)動 改為擴展包

Oracle驅(qū)動移出核心包

Firebird驅(qū)動移出核心包

取消別名定義文件alias.php

配置參數(shù)讀取的時候取消環(huán)境變量判斷 需要讀取環(huán)境變量的時候使用Env類

環(huán)境變量定義文件更改為 .env 由原來的PHP數(shù)組改為ini格式定義(支持數(shù)組方式)

狀態(tài)配置和擴展配置的加載順序調(diào)整 便于狀態(tài)配置文件中可以更改擴展配置的參數(shù)

取消域名綁定到路由分組功能

控制器類的success和error方法url參數(shù)支持傳入空字符串,則不做任何處理

控制器的error success result redirect方法均不需要使用return

創(chuàng)建目錄的權(quán)限修改為0644

感謝各位的閱讀!關(guān)于ThinkPHP5.0版本的詳細介紹就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI