PHP Conference Japan 2024

新功能

PHP 核心

唯讀修訂

匿名類別現在可以標記為唯讀。

唯讀屬性現在可以在複製期間重新初始化。

具類型的類別常數

類別、介面、特性和列舉常數現在支援類型宣告。

從魔術方法建立的閉包

從魔術方法建立的閉包現在可以接受具名引數。

來自特性方法的 final 修飾詞

現在可以在使用來自特性的方法時使用 final 修飾詞。

覆寫屬性 (Override Attribute)

新增了 #[\Override] 屬性來檢查父類別或實作的介面中是否存在某個方法。

動態擷取類別常數的語法

現在可以使用 C::{$name} 語法動態存取類別常數。

靜態變數初始化器

靜態變數初始化器現在可以包含任意運算式。

ini 變數的預設值語法

php.ini 現在支援預設值語法。

<?php
/*
在 /path/to/user.ini 包含以下設定:

listen = localhost:${DRUPAL_FPM_PORT:-9000}
*/

$user_ini = parse_ini_file('/path/to/user.ini');
echo
$user_ini['listen']; // localhost:9000

命令列介面 (CLI)

現在可以檢查多個檔案的語法。

DOM

新增了屬性 DOMElement::$classNameDOMElement::$id。由於 libxml2 的底層限制,這些屬性目前不是二進位安全的。這表示屬性值將在 NUL 位元組處被截斷。

新增了屬性 DOMNode::$isConnectedDOMNameSpaceNode::$isConnected

新增了屬性 DOMNode::$parentElementDOMNameSpaceNode::$parentElement

FFI

現在可以將 FFI\CData 指派給其他 FFI\CData。這意味著 CData 現在可以指派給結構和欄位。

Opcache

opcache_get_status()['scripts'][n]['revalidate'] 現在包含腳本時間戳記下次重新驗證的 Unix 時間戳記,由 opcache.revalidate_freq INI 指令決定。

POSIX

posix_getrlimit() 現在接受一個可選的 $resource 參數,以允許擷取單個資源限制。

posix_isatty() 現在會針對整數引發類型警告,遵循通常的 ZPP 語義。

posix_ttyname() 現在會針對整數引發類型警告,遵循通常的 ZPP 語義,並針對無效的檔案描述符整數引發值警告。

資料流 (Streams)

資料流現在可以發出 STREAM_NOTIFY_COMPLETED 通知。這之前尚未實作。

新增註釋

使用者貢獻的註釋

此頁面沒有使用者貢獻的註釋。
To Top