作者 | Tim Anderson
編譯 | 如煙
出品 | 51CTO技術(shù)棧(微信號:blog51cto)
PHP 8.3 正式發(fā)布,最主要的變化是添加“類常量顯式類型”、“只讀屬性深拷貝”,“以及對隨機(jī)性功能的補(bǔ)充”,此外還包含性能改進(jìn)、錯誤修復(fù)等內(nèi)容。
圖片
最新版本的主要功能包括:
1.新增#[\Override] 屬性
驗(yàn)證標(biāo)記有此屬性的方法是否實(shí)際上有一個被重寫的父方法。它可以防止在刪除父方法時出現(xiàn)輸入錯誤或重構(gòu),這種情況會觸發(fā)致命錯誤。
圖片
圖片
2.類常量顯式類型
在類、接口或特性中聲明的常量現(xiàn)在可以被類型化。PHP和 JavaScript 一樣,是一種動態(tài)語言,但對強(qiáng)類型的需求也在不斷增加,并逐漸增加了一些對應(yīng)的支持。
圖片
圖片
3.新增 json_validate () 函數(shù)
該函數(shù)檢查字符串是否為有效的 JSON(JavaScript 對象表示法),并且比 json_decode() 更高效。
圖片
圖片
4.只讀屬性深拷貝
該功能是解決 PHP 對只讀屬性支持這一“嚴(yán)重缺陷”的提案之一。非只讀類可以擴(kuò)展只讀類的提案沒有被批準(zhǔn),但在拷貝期間重新初始化只讀屬性的能力得到了批準(zhǔn)。在__clone()方法執(zhí)行期間,只能重新初始化一次。
圖片
圖片
PHP 的新版本大約每 12 個月發(fā)布一次,上一個版本是 2022 年 12 月發(fā)布的PHP 8.2。
PHP 每個版本都有兩年的主動支持和一年的安全支持。因此,PHP 8.0 的生命周期即將結(jié)束。早在 2022 年 11 月 26 日,PHP 8.0 結(jié)束了主動支持,而安全支持也將在 2023 年 11 月 26 日停止。
長期不受支持的 PHP 版本通常會繼續(xù)使用。今年早些時候的一份報告稱,大多數(shù)部署都處于這種狀態(tài)。
使用各種服務(wù)器端編程語言的網(wǎng)站的百分比(注:一個網(wǎng)站可以使用多個服務(wù)端編程語言)
W3Techs 報告稱,盡管使用 PHP 的開發(fā)人員數(shù)量有所下降,但 PHP 仍然是迄今為止部署最廣泛的服務(wù)器端應(yīng)用程序運(yùn)行時。
根據(jù) StackOverflow 年度報告,開發(fā)人員的 PHP 使用率似乎正在下降。2023 年有 18.58% 的開發(fā)人員表示他們使用 PHP 編寫代碼,而 2022 年為 20.87%,2020 年為 26.2%。盡管如此,PHP 仍然很受歡迎,來自 W3Techs 的數(shù)據(jù)顯示,WordPress(使用PHP語言開發(fā)的內(nèi)容管理系統(tǒng))在43%的網(wǎng)站上運(yùn)行,服務(wù)器端編程語言的網(wǎng)站中有 76.7% 都在使用 PHP。
參考鏈接:
https://devclass.com/2023/11/23/php-8-3-is-released-with-new-features-as-8-0-heads-for-end-of-life/