Everything
php
Learn
Community
Releases
The PHP Project
Learn
Community
Releases
The PHP Project
Home
»
Releases
»
8.4
»
8.4.25
»
PHP 8.4.25
Source Code
PHP 8.4.25 (tar.gz)
sha256: 5cde1da976b728fa09e6b549a4c8afcd0c180337028dacf34f73b11be50253db
PHP 8.4.25 (tar.bz2)
sha256: 952ccc1785266b958f4a1dcfc580e08eabbb79f44222d1eff192bcd98d91f6e3
PHP 8.4.25 (tar.xz)
sha256: dc1ad8b4109898d9db49744450403874858c23efc685b1032a50bd1e83906848
Change Log
core
Fixed bug
GH-23088
(Stack overflow when comparing deeply nested arrays).
Lazizbek Ergashev
date
Fixed leak on double DatePeriod::__construct() call.
ilutov
dom
Fixed bug
GH-23116
(Stack overflow when normalizing a deeply nested DOMDocument).
Lazizbek Ergashev
Fixed bug
GH-23117
(Stack overflow when normalizing a deeply nested Dom\XMLDocument).
Lazizbek Ergashev
Fixed bug
GH-22825
(DOMElement::setAttribute() fails silently when the DTD declares a default value for the attribute).
iliaal
Fixed bug
GH-22447
(UAF at dom_objects_free_storage when setting an attribute node that collides by local name with a namespaced attribute).
David Carlier
Fixed bug
GH-23120
(Stack overflow when comparing deeply nested DOM nodes with DOMNode::isEqualNode()).
Weilin Du
libxml
Fixed bug
GH-22752
(Build failure with libxml 2.15).
David Carlier
mbstring
Fixed bug
GH-22779
(mb_strrpos() returns the wrong position for a negative offset in a non-UTF-8 encoding).
Eyüp Can Akman
Fixed bug
GH-21036
(mb_ereg_search_getregs() crashes after mb_eregi() invalidates the regex cache).
Matthias Goergens
opcache
Fixed bug
GH-22857
(Function JIT emits wrong code for FETCH_OBJ_FUNC_ARG on a property hook getter, losing register-held variables).
Zhao Hao
Fixed bug
GH-22916
(Preserve parent regs in zend_jit_deoptimizer_start()).
Arnaud
openssl
Fix missing error check on invalid alpn protocols.
ndossche
pcre
Fixed bug
GH-21134
(Crash with \C + UTF-8). Using \C in UTF-8 patterns is now forbidden.
Arnaud
reflection
Fixed bug
GH-22905
(Reflection exception messages truncate on null bytes).
DanielEScherzer
Fixed ReflectionProperty::isLazy() and skipLazyInitialization() using the parent slot when a child class hooks an inherited property.
iliaal
Fixed segfault in ReflectionMethod::createFromMethodName() on an uninstantiable subclass.
iliaal
readline
Fixed class constant completion in the interactive shell.
Weilin Du
zip
Fixed bug
GH-17787
(ZipArchive stream stops reading early when the archive is freed while the stream is still open).
Eyüp Can Akman
Fixed ZipArchive::addGlob() and ZipArchive::addPattern() ignoring their default options when no options array is given.
David Carlier
session
Fix corruption in mod_mm.
ndossche
Fixed bug
GH-23043
(broken session id code can cause zend_mm_heap corrupted).
ndossche
simplexml
Fixed integer element offsets that cannot resolve aliasing an existing element.
iliaal
Fixed segfault when comparing uninitialized SimpleXMLElement instances.
iliaal
sockets
Fixed various memory related issues in ext/sockets.
David Carlier
sqlite
Fix leak when trying to close db if blob stream is still open.
ndossche
standard
Fixed bug
GH-23111
(Stack overflow in array_walk_recursive() with deeply nested arrays).
Lazizbek Ergashev
Fixed bug
GH-23113
(Stack overflow in array_replace_recursive() with deeply nested arrays).
Lazizbek Ergashev
Fixed bug
GH-23115
(Stack overflow in compact() with deeply nested arrays).
Lazizbek Ergashev
Fixed stack overflow in count() with COUNT_RECURSIVE and deeply nested arrays.
Lazizbek Ergashev
streams
Fixed bug
GH-15836
(Use-after-free when a user stream filter accesses $this->stream during the close flush).
iliaal
sysvshm
Fixed out-of-bounds write when shm_attach() opens an existing segment with a size larger than the segment actually is.
David Carlier
xsl
Fixed use-after-free when a DOMDocument subclass __clone() retains the stylesheet copy made by XSLTProcessor::importStylesheet().
iliaal
PHP 8.4
Represents a security release
8.4.25
Viewing
2026-08-27
8.4.24
2026-07-30
8.4.23
2026-07-02
8.4.22
2026-06-04
8.4.21
2026-05-07
8.4.20
2026-04-09
8.4.19
2026-03-12
8.4.18
2026-02-12
8.4.17
2026-01-15
8.4.16
2025-12-18
8.4.15
2025-11-20
8.4.14
2025-10-23
8.4.13
2025-09-25
8.4.12
2025-08-28
8.4.11
2025-07-31
8.4.10
2025-07-03
8.4.8
2025-06-05
8.4.7
2025-05-08
8.4.6
2025-04-10
8.4.5
2025-03-13
8.4.4
2025-02-13
8.4.3
2025-01-16
8.4.2
2024-12-19
8.4.1
2024-11-21