PHP 8.5.2 更新日志
PHP 8.5.2 于 2026 年 1 月 15 日发布,是 PHP 8.5 分支的维护版本,包含 Core、DOM、EXIF、Intl、LDAP、Lexbor、Mbstring、PCNTL、Phar、Session、Sqlite3、Standard、URI 和 Zlib 等修复。
- Core:修复动态类常量查找默认参数输出函数签名时的错误假设、parse_ini_string() 解析 malformed INI 时 normalize_value() 断言、生成器中抛出不可捕获异常、错误停用阶段重入 ob_start() 导致 php_output_handler_free UAF,以及“out-of-range floats 转 int”警告误用于字符串的问题。
- DOM 与 EXIF:修复 DOM namespace 节点在 malformed object 克隆时空指针、Dom\\XMLDocument::C14N() 相比 DOMDocument::C14N() 的回归,以及 HEIF 解析中 pos.size 小于 2 时的整数下溢。
- Intl、LDAP、Lexbor、Mbstring:修复 umsg_format_helper() 泄漏、ldap_set_options() 内存泄漏、file: scheme URL 调用 Uri\\WhatWg\\Url::withHost() 时崩溃,以及 mb_decode_mimeheader 分隔符处理问题。
- PCNTL、Phar、Session:修复 Solaris 上 pcntl_getcpuaffinity() 无效进程 ID 处理、Phar::LoadPhar 读取失败时未定义行为、SplFileInfo::openFile() 写入模式、旧版 OpenSSL 1.1.0 构建、Phar extractTo 创建空文件,以及 Session MM module 支持。
- Sqlite3、Standard、URI、Zlib:修复 SQLite3Result::fetchArray() 可能返回 null、proc_open() command 错误检查、mail() header key 为数字时内存泄漏、iptcembed 堆缓冲区溢出、getUnicodeHost() 返回空字符串时断言,以及 gzseek() 越界断言。
