PHP 8.5.1 更新日志
PHP 8.5.1 于 2025 年 12 月 18 日发布,是 PHP 8.5 分支的维护版本,包含 Core、Bz2、DOM、Fibers、Intl、Lexbor、LibXML、MySQLnd、Opcache、PDO、Phar、PHPDBG、SPL、Standard、URI、XML、Zip 和 Zlib 等修复。
- Core:同步 boost.context 到 1.86.0,修复 SensitiveParameter 在命名参数传给可变参数时失效、macOS 上 preserve_none attribute 配置检查问题,以及 userland stream_close() 期间销毁后使用。
- Bz2、DOM、Fibers、Intl:修复 stream filter 对象参数导致断言崩溃、XPath 回调边界泄漏、querySelector/querySelectorAll 选择器大小写问题、C14NFile 缺少 NUL 字节检查、fiber.stack_size 过小时 ASAN 栈溢出,以及 Spoofchecker::setRestrictionLevel() 错误信息提示缺失常量。
- Lexbor、LibXML、MySQLnd、Opcache:修复 Uri\\WhatWg\\Url 调用 withPath() 或 withQuery() 后丢失 host、解析 malformed URL 时 Lexbor 内存损坏导致崩溃、LibXML 新版本 input buffer/parser 弃用处理、MySQL IPv6 方括号地址连接回归,以及 opcache.file_cache 在 interned string buffer 满时损坏。
- PDO 与 Phar:修复 PHP 8.5.0 中 PDO::FETCH_CLASSTYPE 忽略 constructorArgs、PDO quoting 结果 null deref 安全问题、Phar 读取 stub 时未尊重 __halt_compiler() 大小写不敏感、phar 条目 fflush 返回值错误,以及越界 fseek 断言。
- PHPDBG、SPL、Standard:修复 phpdbg_get_executable() 和 phpdbg_end_oplog() 的 ZPP 类型违规、SplFixedArray 反序列化引用处理错误、array_diff 自定义类型检查内存泄漏、深层结构 http_build_query 栈溢出、dns_get_record 空字节终止、array_merge 堆缓冲区溢出,以及 getimagesize 内存信息泄漏。
- URI、XML、Zip、Zlib:修复 ext/uri 遇到 null byte 错误抛出 ValueError、uriparser 无界递归导致栈消耗、xml_set_default_handler() 属性特殊字符回调处理、Zip 属性存在性测试崩溃和 zip_fread 截断,以及 Zlib stream filter 断言崩溃。





