PHP 8.2.7 is an old release of PHP 8.2 series. Using the latest version PHP 8.2.26 is highly recommended.
PHP 8.2 continues to receive bug fixes and security fixes until 2024-12-31.
Downloads
Source Code
git clone https://github.com/php/php-src.git --depth 1 --branch php-8.2.7
./buildconf
), configuring the build ./configure
, and running make
.Detailed articles on how to compile PHP are available for Ubuntu/Debian based systems and Fedora/RHEL based systems.
Windows binaries
Docker/Podman Containers
docker pull php:8.2.7-cli-alpine
docker pull php:8.2.7-cli
docker pull php:8.2.7-fpm-alpine
docker pull php:8.2.7-apache
docker pull php:8.2.7-fpm
ChangeLog
Core
- Fixed bug GH-11152 (Unable to alias namespaces containing reserved class names).
- Fixed bug GH-9068 (Conditional jump or move depends on uninitialised value(s)).
- Fixed bug GH-11189 (Exceeding memory limit in
zend_hash_do_resize
leaves the array in an invalid state). - Fixed bug GH-11063 (Compilation error on old GCC versions).
- Fixed bug GH-11222 (foreach by-ref may jump over keys during a rehash).
Date
- Fixed bug GH-11281 (
DateTimeZone::getName()
does not include seconds in offset).
Exif
- Fixed bug GH-10834 (
exif_read_data()
cannot read smaller stream wrapper chunk sizes).
FPM
- Fixed bug GH-10461 (PHP-FPM segfault due to after free usage of child->ev_std(out|err)).
- Fixed bug #64539 (FPM status page: query_string not properly JSON encoded).
- Fixed memory leak for invalid primary script file handle.
Hash
- Fixed bug GH-11180 (
hash_file()
appears to be restricted to 3 arguments).
LibXML
- Fixed bug GH-11160 (Few tests failed building with new libxml 2.11.0).
MBString
- Fix bug GH-11217 (Segfault in
mb_strrpos
/mb_strripos
when using negative offset and ASCII encoding).
Opcache
- Fixed bug GH-11134 (Incorrect match default branch optimization).
- Fixed too wide OR and AND range inference.
- Fixed missing class redeclaration error with OPcache enabled.
- Fixed bug GH-11245 (In some specific cases SWITCH with one default statement will cause segfault).
PCNTL
- Fixed maximum argument count of
pcntl_forkx()
.
PGSQL
- Fixed parameter parsing of
pg_lo_export()
.
Phar
- Fixed bug GH-11099 (Generating
phar.php
during cross-compile can't be done).
Soap
- Fixed bug GHSA-76gg-c692-v2mw (Missing error check and insufficient random bytes in HTTP Digest authentication for SOAP). (CVE-2023-3247)
- Fixed bug GH-8426 (make test fail while soap extension build).
SPL
- Fixed bug GH-11178 (Segmentation fault in spl_array_it_get_current_data (PHP 8.1.18)).
Standard
- Fixed bug GH-11138 (
move_uploaded_file()
emitsopen_basedir
warning for source file). - Fixed bug GH-11274 (POST/PATCH request switches to GET after a HTTP 308 redirect).
Streams
Commit List
Amedeo Baragiola
- Fix compilation error on old GCC versions in 175ff603c3
Bob Weinand
- Fix GH-11189: Exceeding memory limit in
zend_hash_do_resize
leaves the array in an invalid state in 05bd1423ee - Fix GH-11222: foreach by-ref may jump over keys during a rehash in 975d28e278
Dmitry Stogov
- JIT: Fixed inaccurate range inference usage for UNDEF/NULL/FALSE in 25ad171f63
- Fixed GH-11127 (JIT fault) in ed0b593c11
Ilija Tovilo
- Fix incorrect match default branch optimization in 3a76f795f8
- Propagate STREAM_DISABLE_OPEN_BASEDIR src flag to
php_stream_stat_path_ex
in 8bf2d587d7 - Allow aliasing namespaces containing reserved class names in 5ad6571a21
- Update libenchant in arm build in 5cbc917fee
- Endless recursion when using + on array in foreach in dc20cd9c3a
- Add retry mechanism in
run-tests.php
in 11597d18d6 - Fix use-of-uninitialized value in
phar_object.c
in 78ec64af44 - Fix use-of-undefined in
zend_fiber_object_gc
of ex->call in 06fe9ff0f1 - Fix compilation for PHP 8.1 in 8f66b67ccf
- Fix potential NULL pointer access in
zend_fiber_object_gc
in 0a04c008d0 - Fix delayed early binding class redeclaration error in e3499130f1
- Fix segfault in mb_strrpos/
mb_strripos
with ASCII encoding and negative offset in aa553af911
Jakub Zelenka
- Fix GH-10461: Postpone FPM child freeing in event loop in 102953735c
- Expose JSON internal function to escape string in e8a836eb39
- Fix bug #64539: FPM status - query_string not properly JSON encoded in 5e64ead64a
- FPM: Fix memory leak for invalid primary script file handle in 4294e8d448
- Fix FPM status json encoded value test in aa061cd40b
Máté Kocsis
- Fix ZPP of
pg_lo_export()
in f0149c5c0b
nielsdos
- Fix too wide OR and AND range inference in fbf5216ca0
- Fix GH-9068: Conditional jump or move depends on uninitialised value(s) in 4ca8daf3ed
- Fix GH-11175 and GH-11177: Stream socket timeout undefined behaviour in d75c1d00a9
- Fix GH-11178: Segmentation fault in spl_array_it_get_current_data (PHP 8.1.18) in 81e50b4ee3
- Fix GH-8426: make test fail while soap extension build in 6ba0b06819
Niels Dossche
- Fix GH-10031: [Stream] STREAM_NOTIFY_PROGRESS over HTTP emitted irregularly for last chunk of data in b33fbbfe3d
- Fix maximum argument count of
pcntl_forkx()
in a0e71cb811 - Fix GH-11160: Few tests failed building with new libxml 2.11.0 in 7c0dfc5cf5
- Fix GH-11180:
hash_file()
appears to be restricted to 3 arguments in baa07f3de3 - Fix GH-10834:
exif_read_data()
cannot read smaller stream wrapper chunk sizes in 7b768485f3 - Fix GH-11274: POST/PATCH request via file_get_contents +
stream_context_create
switches to GET after a HTTP 308 redirect in 1ede3137c9 - Fix GH-11245 (In some specific cases SWITCH with one default statement will cause segfault) in 5cad1a7176
- Fix GH-11281:
DateTimeZone::getName()
does not include seconds in offset in f9117eb824 - Fix missing randomness check and insufficient random bytes for SOAP HTTP Digest in 126d517ce2
Peter
- Fix GH-11099: Generating
phar.php
during cross-compile can't be done in 93fa9613e1
Pierrick Charron
- Prepare PHP 8.2.7 in 595e780f15
Randy Geraads
- Added negative offset test for
mb_strrpos
in c5a623ba5e
Remi Collet
- Fix GH-11382 add missing hash header for bin2hex in e5417a3270