PHP 是一種新型的 CGI 程序編寫語言,易學易用,運行速度快,可以方便快捷地編寫出功能強大,運行速度快,并可同時運行于 Windows、Unix、Linux 平臺的Web后臺程序,內置了對文件上傳、密碼認證、Cookies 操作、郵件收發、動態 GIF 生成等功能,PHP 直接為很多數據庫提供原本的連接,包括Oracle、Sybase、Postgres、Mysql、Informix、Dbase、Solid、Access 等,完全支持ODBC接口,用戶更換平臺時,無需變換 PHP 代碼,可即拿即用 ![]() 使用方法棄用e修飾符 常見問題php 函數調用的幾種方式有哪些? 更新日志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 預加載支持。 使用編程語言寫的程序,由于每條指令都對應計算機一個特定的基本動作,所以程序占用內存少、執行效率高。 |