PHP 8.4.14错误修复版本发布 提升稳定性和安全性

AI 智能摘要
PHP官方近日发布了PHP 8.4.14版本,这是一个错误修复版本。对于广大的PHP开发者和站长来说,及时了解并更新到最新版本至关重要,因为这些修复通常能提升PHP的稳定性、性能和安全性。搬主题观察到,本次更新涵盖了Core、CLI、Curl、Date、DOM、GD、MySQLnd、Opcache、Phar、SimpleXML、Soap、Standard、Streams、XML阅读器和Zip等多个模块,修复了大量已知问题。

PHP官方近日发布了PHP 8.4.14版本,这是一个错误修复版本。对于广大的PHP开发者和站长来说,及时了解并更新到最新版本至关重要,因为这些修复通常能提升PHP的稳定性、性能和安全性。搬主题观察到,本次更新涵盖了Core、CLI、Curl、Date、DOM、GD、MySQLnd、Opcache、Phar、SimpleXML、Soap、Standard、Streams、XML阅读器和Zip等多个模块,修复了大量已知问题。

图片[1]-PHP 8.4.14错误修复版本发布  提升稳定性和安全性-搬主题

以下是PHP 8.4.14的具体更新内容亮点:

Core(核心)

  • 修复了GH-19765:解决了object_properties_load()绕过只读属性检查的问题,增强了对象属性的安全性。
  • 修复了hard_timeout with --enable-zend-max-execution-timers:提高了执行计时器在严格超时设置下的可靠性。
  • 修复了GH-19792:解决了当警告和异常同时触发时,SCCP可能导致返回值UAF(Use-After-Free)的问题,避免了潜在的崩溃。
  • 修复了GH-19653:解决了临时闭包之间的命名参数解包可能导致崩溃的问题,提升了闭包处理的稳定性。
  • 修复了GH-19839:修正了用户空间数组上HASH_FLAG_HAS_EMPTY_IND标志不正确的问题,确保了哈希表操作的准确性。
  • 修复了GH-19480:解决了配置open_basedir时无法取消设置error_log php.ini的问题,提升了配置的灵活性。
  • 修复了GH-20002:解决了在*BSD系统上使用MSAN构建时出现的问题,提升了跨平台的兼容性。

CLI(命令行界面)

  • 修复了使用PHP_CLI_SERVER_WORKERS时,由于CLI服务器中的EAGAIN导致的无用“轮询事件失败”错误日志,减少了不必要的日志输出。

Curl

  • 修复了使用克隆运算符而非curl_copy_handle()函数克隆CurlHandle时,CURLOPT_POSTFIELDS的克隆问题,确保了CurlHandle克隆行为的正确性。
  • 修复了版本8.16的curl构建和测试失败问题,提升了集成稳定性。

Date(日期)

  • 修复了GH-17159:解决了::createFromFormat的“P”格式吞噬字符串文字的问题,提高了日期格式化功能的准确性。

DOM

  • 修复了macOS上的宏名称冲突,提升了在macOS环境下的兼容性。
  • 修复了GH-20022:解决了docker-php-ext-install DOM失败的问题,方便了Docker环境下的扩展安装。

GD

  • 修复了GH-19955:解决了imagefttext()内存泄漏问题,避免了长期运行的应用程序内存耗尽。

MySQLnd

  • 修复了#67563:解决了使用mysqlnd编译的mysqli不接受IPv6地址作为参数的问题,增强了对IPv6环境的支持。

Opcache

  • 修复了GH-19669:解决了zend_jit_trace_type_to_info_ex中的断言失败问题,提升了JIT编译的稳定性。
  • 修复了GH-19831:解决了函数JIT可能不会取消引用属性值的问题,确保了JIT编译的正确性。
  • 修复了GH-19889:解决了zend_runtime_jit()、zend_jit_hot_func()中的竞争条件问题,提升了JIT在多线程环境下的健壮性。

Phar

  • 修复了tar头写入失败后的内存泄漏和无效延续问题,提高了Phar归档的可靠性。
  • 修复了应用zip签名时创建临时文件失败导致的内存泄漏,增强了Phar在处理zip签名时的稳定性。

SimpleXML

  • 修复了GH-19988:解决了zend_string_init with NULL pointer in simplexml (UB)的问题,避免了SimpleXML在特定情况下的未定义行为。

Soap

  • 修复了GH-19784:解决了SoapServer内存泄漏问题,提升了SOAP服务的稳定性。
  • 修复了GH-20011:解决了未知类型的SoapVar数组导致崩溃的问题,增强了SOAP数据处理的健壮性。

Standard(标准库)

  • 修复了GH-12265:解决了克隆对象会破坏序列化递归的问题,确保了对象序列化和克隆的正确性。
  • 修复了GH-19701:解决了序列化/反序列化丢失一些数据的问题,提升了数据持久化的可靠性。
  • 修复了GH-19801:解决了var_dump()和debug_zval_dump()中的泄漏问题,避免了调试工具造成的内存泄露。
  • 修复了GH-20043:解决了RC1数组的array_unique断言失败导致排序异常的问题,确保了数组操作的正确性。
  • 修复了GH-19926:解决了在COW(Copy-On-Write) violation标志仍设置的情况下,拼接数组时提前重置内部指针的问题,提升了数组拼接的稳定性。
  • 修复了GH-19570:解决了无法在/dev/zero和/dev/null中进行fseek的问题,提升了文件操作的兼容性。

Streams(流)

  • 修复了GH-19248:解决了在main中使用strerror_r而不是strerror的问题,提升了错误处理的线程安全性。
  • 修复了GH-17345:解决了错误#35916尚未完全修复的问题,确保了流操作的健壮性。
  • 修复了GH-19705:解决了尝试在不可寻址流上刷新时的分段错误,避免了特定场景下的崩溃。

XML 阅读器

  • 修复了GH-20009:解决了RelaxNG模式失败时XMLReader泄漏的问题,提升了XML读取器的稳定性。

Zip

  • 修复了GH-19688:解决了删除zip addGlob()中的模式溢出问题,增强了Zip操作的安全性。
  • 修复了GH-19932:解决了zip setEncryptionName()/setEncryptionIndex()中的内存泄漏问题,提升了Zip加密操作的稳定性。

最后总结

PHP 8.4.14的发布,再次体现了PHP开发团队对代码质量和稳定性的持续投入。这些看似细小的错误修复,对于维护大型Web应用的稳定运行至关重要。特别是内存泄漏、崩溃和安全漏洞的修复,能够显著提升PHP应用程序的健壮性和安全性。

搬主题强烈建议所有正在使用或计划升级到PHP 8.4系列的用户,尽快更新到8.4.14版本。虽然这只是一个错误修复版本,但其包含的修复能够有效减少潜在的运行时问题,避免不必要的麻烦。对于站长而言,一个稳定、安全的PHP环境是网站正常运行的基础,因此请务必重视这次更新。

更多详细的更新说明,请访问官方更新日志:https://www.php.net/ChangeLog-8.php#8.4.14。

© 版权声明
THE END
喜欢就支持一下吧
点赞10 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容