新功能

PHP 内核

只读修改

匿名类现在可以标记为只读。

只读属性现在可以在克隆期间重新初始化。

类型化类常量

类、接口、特性和枚举常量现在支持类型声明。

从魔术方法创建的闭包

从魔术方法创建的闭包现在可以接受命名参数。

带有特性的方法的 final 修饰符

在使用特性中的方法时,现在可以使用 final 修饰符。

Override 属性

添加了 #[\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

现在可以对多个文件进行 lint 检查。

DOM

添加了属性 DOMElement::$classNameDOMElement::$id。目前这些属性不是二进制安全的,因为 libxml2 的底层限制。这意味着属性值将在空字节处被截断。

添加了属性 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 语义,并对无效的文件描述符整数引发值警告。

流现在可以发出 STREAM_NOTIFY_COMPLETED 通知。这在以前没有实现。

添加笔记

用户贡献笔记

此页面没有用户贡献的笔记。
To Top