PHP 8.5.1 现已发布,这是一个安全更新版本。建议所有 PHP 8.5 用户升级到此版本。
- Core:
- 将所有 boost.context 文件与 1.86.0 版本同步。
- 修复了错误 GH-20435(SensitiveParameter 不适用于将命名参数传递给可变参数)。
- 修复了错误 GH-20546(macOS 上的 preserve_none 属性配置检查问题)。
- 修复了错误 GH-20286(在用户空间 stream_close() 期间 use-after-destroy)。
- Bz2:
- DOM:
- 修复注册 XPath 回调时遇到特殊情况时的内存泄漏问题。
- 修复了错误 GH-20395(querySelector 和 querySelectorAll 要求 $selectors 中的元素为小写)。
- 修复 C14NFile() 中缺少 NUL 字节检查的问题。
- Fibers:
- 修复了错误 GH-20483(当 fiber.stack_size INI 值较小时,ASAN 堆栈溢出)。
- Intl:
- 修复了错误 GH-20426(Spoofchecker::setRestrictionLevel() 错误消息提示缺少常量)。
- Lexbor:
- 修复了错误 GH-20501(调用 withPath() 或 withQuery() 后 \Uri\WhatWg\Url 丢失 host)。
- 修复了错误 GH-20502(由于 Lexbor 内存损坏,解析格式错误的 URL 时,\Uri\WhatWg\Url 崩溃 (SEGV))。
- LibXML:
- 修复了较新版本 libxml 中与输入缓冲区/解析器处理相关的一些弃用问题。
- MySQLnd:
- 修复了错误 GH-20528(回归导致使用方括号内的 IPv6 地址连接 mysql 失败)。
- Opcache:
- 修复了错误 GH-20329(opcache.file_cache 在全局字符串缓冲区满载时损坏)。
- PDO:
- 修复了错误 GH-20553(PHP 8.5.0 中的 PDO::FETCH_CLASSTYPE 忽略 $constructorArgs)。
- 修复了 GHSA-8xr5-qppj-gvwj(PDO quoting result null deref)。(CVE-2025-14180)
- Phar:
- 修复了错误 GH-20442(Phar 在读取存根时不考虑 __halt_compiler() 的大小写不敏感)。
- 修复 phar 文件条目的 fflush() 返回值错误的问题。
- 修复在超出边界的情况下使用 fseek 查找 phar 文件时断言失败的问题。
- PHPDBG:
- 修复了 phpdbg_get_executable() 和 phpdbg_end_oplog() 中的 ZPP 类型违规问题。
- SPL:
- 修复了错误 GH-20614(SplFixedArray 在反序列化中错误地处理引用)。
- Standard:
- URI:
- 修复了错误 GH-20366(当遇到空字节时,ext/uri 错误地抛出 ValueError)。
- 修复了 CVE-2025-67899(uriparser 0.9.9 及更早版本允许无限制递归和堆栈消耗)。
- XML:
- 修复了错误 GH-20439(当将数据传递给回调时,xml_set_default_handler() 无法正确处理属性中的特殊字符)。
- Zip:
- 修复属性存在性测试中的崩溃问题。
- 不再截断 zip_fread() 返回值(使用用户指定大小时)
- Zlib:
- 修复因流过滤器对象参数而导致的断言失败和崩溃问题。
详情可查看:https://www.php.net/ChangeLog-8.php#8.5.1