PHP7.4.0 發布, PHP 7.4.0 的新特性是什么
時間:2019-11-30 11:08:16 | 來源:
PHP 7.4.0 發布了,此版本標志著 PHP 7 系列的第四次特性更新。
PHP 7.4.0 進行了許多改進,并帶來了一些新特性,包括:
Typed Properties 類型屬性
類屬性現在支持類型聲明,以下示例將強制 $User-> id 只能分配 int 值,而 $User-> name 只能分配 string 值。
<?phpclassUser{ public int $id; public string $name;}?>
Arrow Functions 箭頭函數
箭頭函數提供了用于定義具有隱式按值作用域綁定的函數的簡寫語法。
<?php$factor = 10;$nums = array_map(fn($n) => $n * $factor, [1, 2, 3, 4]);// $nums = array(10, 20, 30, 40);?>
將閉包傳遞給 array_map 或 array_filter 等函數時,它可以發揮極大的作用。
// A collection of Post objects $posts = [/* … */];$ids = array_map(fn($post) => $post->id, $posts);
Limited Return Type Covariance and Argument Type Contravariance 有限返回類型協變與參數類型逆變
僅當使用自動加載時,才提供完全協變/逆變支持。在單個文件中,只能使用非循環類型引用,因為所有類在被引用之前都必須可用。
<?phpclassA{}classBextendsA{}classProducer{ publicfunctionmethod(): A{}}classChildProducerextendsProducer{ publicfunctionmethod(): B{}}?>
Unpacking Inside Arrays 打包內部數組
<?php$parts = ['apple', 'pear'];$fruits = ['banana', 'orange', ...$parts, 'watermelon'];// ['banana', 'orange', 'apple', 'pear', 'watermelon'];?>
Numeric Literal Separator 數值文字分隔符
數字文字可以在數字之間包含下劃線。
<?php6.674_083e-11; // float299_792_458; // decimal0xCAFE_F00D; // hexadecimal0b0101_1111; // binary?>
Weak References 弱引用
弱引用使程序員可以保留對對象的引用,不會阻止對象被銷毀。
Allow Exceptions from __toString() 允許從 __toString() 拋出異常
現在允許從 __toString() 引發異常,以往這會導致致命錯誤,字符串轉換中現有的可恢復致命錯誤已轉換為 Error 異常。
Opcache Preloading Opcache 預加載
新增 Opcache 預加載支持。
此外還有一些棄用,以及從核心中刪除一些擴展,詳情查看:
關于我們:
Infocode藍暢信息技術有限公司成功為多家世界財富500強企業以及其他著名品牌提供優質服務,是您靠譜的互聯網開發供應商。
服務客戶遍及北京、上海、杭州、深圳、廣州、天津、青島、南京、寧波、蘇州、無錫、廈門、重慶、西安等大中型城市及地區 為您提供:H5開發,小程序開發,H5外包,微信開發,H5商城開發,小程序商城開發,網站開發外包,H5游戲開發,小程序開發外包,小程序設計、APP開發外包,UI設計,SEO優化,SEO外包,視頻后期制作等優質服務