PHP 8.5.0正式发布:管道运算符、URI扩展与多项语言增强

PHP 开发组宣布 PHP 8.5.0 正式可用,作为语言最新的次要版本。官方发布页点名的方向包括:新的 URI 扩展、管道运算符(|>)、Clone With、#[\NoDiscard] 属性,以及在常量表达式中支持闭包、强制转换与 first class callable 等。[1][2]

迁移手册里的管道运算符例子很直白:"Hello World" |> strlen(...) 得到 11,把调用链写成从左到右的数据流。#[\NoDiscard] 标记返回值应当被消费,否则告警;若故意丢弃,可用 (void) 强制转换声明意图。常量表达式现可写闭包与强制转换;clone 成为函数,并支持通过 $withProperties 在克隆时重写(含 readonly)属性。此外还有常量上的属性、#[\Override] 可用于属性、静态属性的非对称可见性、Fatal Error 带回溯等语言层改动。[2]

扩展与标准库也有一批可见变化:始终启用的 uri 扩展按 RFC 3986 与 WHATWG URL 处理 URI/URL;cURL、DOM、EXIF(含 HEIF/HEIC)、Filter 的 FILTER_THROW_ON_FAILURE、Intl 列表格式化、PDO_Sqlite 事务模式、Session/Cookie 的 partitioned 键,以及 getimagesize 对 HEIF/SVG 等。完整不兼容变更与废弃项以 Migration Guide、ChangeLog 为准。[1][2]

源码包见官网 downloads,Windows 二进制见 windows.php.net。准备上 8.5 的项目建议先通读迁移指南,在 CI 矩阵加入 8.5 跑测试,并重点回归依赖常量表达式、clone、cookie/分区以及 URL 解析的代码路径。

来源

[1] PHP 8.5.0 Release Announcement,PHP.net。

[2] Migrating to PHP 8.5: New Features,PHP Manual。

#PHP #PHP8.5 #管道运算符 #URI #发布

排序方式 :

成为第一条评论!

Nobody's responded to this post yet. Add your thoughts and get the conversation going.