恰逢一年一度感恩節(jié),PHP 8.0 正式版現(xiàn)已正式開(kāi)放下載。
PHP 8.0 引入了 JIT編譯器特性,同時(shí)加入多種新的語(yǔ)言功能,例如命名參數(shù)、聯(lián)合類型、注解、Constructor Property Promotion、match 表達(dá)式、nullsafe 運(yùn)算符以及對(duì)類型系統(tǒng)、錯(cuò)誤處理和一致性的改進(jìn)。
下載地址:https://www.php.net/downloads.php
JIT,Just-In-Time,即時(shí)編譯
PHP 8.0 版本最重大的特性非 JIT莫屬。而 JIT引入過(guò)程也是命途多舛,在經(jīng)過(guò)了 PHP 5 與 7 大版本系列(PHP 6 項(xiàng)目流產(chǎn))更新,直到去年 3 月份才最終通過(guò)投票確認(rèn)將進(jìn)入 PHP 8。
PHP 8.0 在性能上大約改進(jìn)了 10%,通過(guò) JIT 在綜合基準(zhǔn)測(cè)試中的性能提高到了 2.94,在某些特定的長(zhǎng)期運(yùn)行的應(yīng)用程序中提高到 1.5–2。下面是 PHP 開(kāi)發(fā)團(tuán)隊(duì)提供的相關(guān)對(duì)比數(shù)據(jù):
-
支持 Union Types,聯(lián)合類型
-
新的 static 返回類型
-
PHP 8.0 合并了諸多性能優(yōu)化
-
JSON 支持現(xiàn)在被視為語(yǔ)言的核心部分,始終可用,而不是作為可選模塊。
-
支持 named 參數(shù),因?yàn)樗鼈兡軌蛑付▍?shù)名稱而不是其確切順序。
-
支持類/屬性/函數(shù)/方法/參數(shù)/常量的結(jié)構(gòu)化元數(shù)據(jù)的屬性(或在其他語(yǔ)言中也稱為注釋或修飾符)。
-
支持可以指示多種不同類型的聯(lián)合類型,這些類型可以用作參數(shù)或函數(shù)的返回類型。
-
str_contains()函數(shù)是一種檢查字符串是否包含在另一個(gè)字符串中的簡(jiǎn)便方法,而不必使用strpos等。與之相似的是新的str_starts_with()和str_ends_with()函數(shù),這些函數(shù)很容易解釋。
-
添加了Nullsafe運(yùn)算符,作為在方法上應(yīng)用空合并行為的快速簡(jiǎn)便的方法。