PHP 8.1.0 正式发布
PHP 8.1.0 现已发布,该版本带来了许多改进和新功能。
枚举
使用枚举而不是一组常量并立即进行验证。
只读属性
只读属性不能在初始化后更改,比如,在为它们分配值后。它们可以用于对值对象和数据传输对象建模。
First-class 可调用语法
现在可以获得对任何函数的引用。
新的初始化器
对象现在可以用作默认参数值、静态变量和全局常量,以及属性参数,这有效地使使用嵌套属性成为可能。
纯交集类型
当一个值需要同时满足多个类型约束时,使用交集类型。注意,目前无法将交集和联合类型混合在一起,例如 A&B|C。
Never 返回类型
使用 never 类型声明的函数或方法表示它不会返回值,并且会抛出异常或通过调用 die()、exit()、trigger_error() 或类似的东西来结束脚本的执行。
Final 类常量
可以声明 final 类常量,以禁止它们在子类中被重写。
显式八进制数字表示法
现在可以使用显式 0o 前缀写入八进制数。
纤程
Fibers 是用于实现轻量级协作并发的原语。它们是一种创建可以像生成器一样暂停和恢复的代码块的方法,但可以从堆栈中的任何位置进行。Fibers 本身并没有提供并发性,仍然需要一个事件循环。但是,它们允许通过阻塞和非阻塞实现共享相同的 API。Fibers 允许摆脱以前在 Promise::then() 或基于生成器的协程中看到的样板代码。库通常会围绕 Fiber 构建进一步的抽象,因此无需直接与它们交互。
对字符串键控数组的数组解包支持
PHP 以前支持通过扩展运算符在数组内部解包,但前提是数组具有整数键。现在也可以使用字符串键解包数组。
性能优化
PHP 8.1 在性能方面也有一些改动,包括:
- ARM64 的 JIT 后端 (AArch64)
- 继承缓存(避免在每个请求中重新链接类)
- 快速类名解析(避免小写和哈希查找)
- timelib 和 ext/date 性能改进
- SPL 文件系统迭代器改进
- 序列化/反序列化优化
- 一些内部函数优化(get_declared_classes()、explode()、strtr()、strnatcmp()、dechex())
- JIT 改进和修复
更多详细内容,请查看更新公告。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Endless OS 4 正式发布,Debian 衍生发行版
改进应用程序网格导航 自 Endless OS 3.9 以来,安装在系统上的应用程序都在桌面上显示为两页或多页的图标。我们听到的反馈是用户很难发现和切换页面:许多用户没有意识到有多于一个页面。 为了解决这个问题,Endless OS 4 增加了可点击的箭头,并使表示页数的一排小点更加明显,以便在各页之间进行导航,即使在复杂的壁纸上也是如此。 新的默认壁纸 Endless OS 4 包括一个新的默认壁纸:用户可以在设置→背景中更改并使用。 快速切换用户 现在可以通过选择锁屏或用户菜单中的按钮,在其中一个用户仍在登录时切换到另一个用户账户。 免驱动打印 作为升级到 Endless OS 4 的一部分,所有配置的打印机都被移除。取而代之的是,连接到你的电脑或在同一网络下的打印机现在都能被自动发现。 长期支持 随着 Endless OS 4 的推出,我们引入了一个长期支持版本的操作系统,即使在 Endless OS 5 发布后,也将继续得到多年的支持。 默认情况下,Endless OS 4 将在 Endless OS 5 发布后自动更新到新版本。不过,现在用户可以选择停留在 Endless O...
- 下一篇
Cocos Creator 2.4.7 正式发布,优化编辑器兼容性与稳定性
Cocos Creator 2.4.7 已正式发布。此次更新对近期发现的一些 2.x 相关问题集中进行了修复,重点提升了编辑器的稳定性、兼容性,官方建议所有 2.x 用户升级。 Cocos Creator 是以内容创作为核心,实现了脚本化、组件化和数据驱动的游戏开发工具。 具备了易于上手的内容生产工作流,以及功能强大的开发者工具套件,可用于实现游戏逻辑和高性能游戏效果。 主要变化如下: Stack Changes 升级编辑器的 Electron 版本到 13.1.4。解决了 Windows 上部分用户频繁出现的 WebGL 崩溃问题,还支持了 M1(Apple Silicon)的原生 ARM 指令集,建议所有 M1 用户升级以获得更好的性能。详见升级说明。 升级 Android 工程 Gradle 版本到 4.2.2 版本,详见升级说明。 Editor 修复 Prefab 打开时点击保存,可能覆盖场景数据的问题 修复编辑器下刷新脚本时,若无场景切换操作则内存会持续增长的问题,感谢 isilent 修复重复构建部分文件 MD5 可能发生变化的问题 修复 2.4.5 出现的部分第三方插件 ...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- SpringBoot2整合Redis,开启缓存,提高访问速度
- Windows10,CentOS7,CentOS8安装Nodejs环境
- MySQL8.0.19开启GTID主从同步CentOS8
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- Hadoop3单机部署,实现最简伪集群
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- 设置Eclipse缩进为4个空格,增强代码规范