PHP 8.2.1 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.1
./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.1-cli-alpine
docker pull php:8.2.1-cli
docker pull php:8.2.1-fpm-alpine
docker pull php:8.2.1-apache
docker pull php:8.2.1-fpm
ChangeLog
Core
- Fixed bug GH-9905 (
constant()
behaves inconsistent when class is undefined). - Fixed bug GH-9918 (License information for xxHash is not included in README.REDIST.BINS file).
- Fixed bug GH-9890 (OpenSSL legacy providers not available on Windows).
- Fixed bug GH-9650 (Can't initialize heap: [0x000001e7]).
- Fixed potentially undefined behavior in Windows ftok(3) emulation.
- Fixed GH-9769 (Misleading error message for unpacking of objects).
Apache
- Fixed bug GH-9949 (Partial content on incomplete POST request).
FPM
- Fixed bug GH-9959 (Solaris port event mechanism is still broken after bug #66694).
- Fixed bug #68207 (Setting fastcgi.error_header can result in a WARNING).
- Fixed bug #80669 (FPM numeric user fails to set groups).
- Fixed bug GH-8517 (Random crash of FPM master process in fpm_stdio_child_said).
Imap
- Fixed bug GH-10051 (IMAP: there's no way to check if a IMAP\Connection is still open).
MBString
- Fixed bug GH-9535 (The behavior of
mb_strcut
in mbstring has been changed in PHP8.1).
Opcache
- Fixed bug GH-9968 (Segmentation Fault during OPCache Preload).
OpenSSL
- Fixed bug GH-9997 (OpenSSL engine clean up segfault).
- Fixed bug GH-9064 (PHP fails to build if openssl was built with
--no-ec
). - Fixed bug GH-10000 (OpenSSL test failures when OpenSSL compiled with no-dsa).
Pcntl
- Fixed bug GH-9298 (Signal handler called after rshutdown leads to crash).
PDO_Firebird
- Fixed bug GH-9971 (Incorrect NUMERIC value returned from PDO_Firebird).
PDO/SQLite
- Fixed bug #81740 (
PDO::quote()
may return unquoted string). (CVE-2022-31631)
Session
- Fixed GH-9932 (session name silently fails with . and [).
SPL
- Fixed GH-9883 (SplFileObject::__toString() reads next line).
- Fixed GH-10011 (Trampoline autoloader will get reregistered and cannot be unregistered).
SQLite3
- Fixed bug #81742 (
open_basedir
bypass in SQLite3 by using file URI).
TSRM
- Fixed Windows
shmget()
wrt. IPC_PRIVATE.
Commit List
Alex Dowad
- Fix regression test for GH-9535 on PHP-8.2+ in d3933e0b6c
- For UTF-7, flag unnecessary extra trailing byte in Base64 section as error in a618682373
- Fix mangled kana output for JIS encoding in 8f84192403
- Support Microsoft's "Best Fit" mappings for Windows-1252 text encoding in a1a69c3734
Arnaud Le Blanc
- Do not resolve constants on non-linked class during preloading in GH-9975
- Fallback to first line of function when ex->opline is NULL in GH-10003
Bob Weinand
- Move observer_declared_function_notify until after
pass_two()
in 6bd8f40291 - Do not report MINIT stage internal class aliases in extensions in 182314c317
- Fix opcache preload with observers enabled in 4052bbf0e3
- Fix crash reading module_entry after DL_UNLOAD() when module already loaded in 0bfdd5691c
Christoph M. Becker
- Fix GH-9905:
constant()
behaves inconsistent when class is undefined in b2186ca7c4 - Fix GH-9890: OpenSSL legacy providers not available on Windows in 9aa86e619d
- Avoid undefined behavior in Windows ftok(3) emulation in 2d94ee5f20
- Fix GH-9971: Incorrect NUMERIC value returned from PDO_Firebird in 44377c3c70
- Fix #81742:
open_basedir
bypass in SQLite3 by using file URI in 2f6b9e6c63 - Fix GH-9949: Partial content on incomplete POST request in aef7d810d3
shmget()
with IPC_CREAT must not create 0 size SHM in 4631e9de2b- Fix #81740:
PDO::quote()
may return unquoted string in 9f4ef68669
Daniel Black
ext/mysqli
tests "using password" optional in error messages in b6b4a628a5ext/mysqli
tests "using password" optional in error messages (part 2) in c21a5920ac- Fix mysqli test wrt. MariaDB in b77edf82ac
David Carlier
- Fix GH-9932: Discards further characters for session name in a4298c14c1
- fix litespeed SAPI build warnings in 8a221e2763
Derick Rethans
- Updated to version 2022.7 (2022g) in bcc00304c7
- Empty merge in 6f71697e65
- Updated to version 2022.7 (2022g) in e568f93422
- Import timelib 2021.18 in 818b46acb0
- Fixed GH-9699, GH-9866, and GH-9880 (problems with diff); and GH-9700 (greedy tzid parsing) in d021851171
- Import timelib 2022.03 in 41fef8b849
- Some (old, backwards compatible) TZIDs can have numbers in them in c87c803b96
Dmitry Stogov
- Fix memory leak in a8bd342397
- Fix a memory leak in tracig JIT when the same closure is called through
Closure::call()
and natively in 45cb3f917a
Erki Aring
- Fix GH-9298: remove all registered signal handlers in pcntl RSHUTDOWN in 5ecbb1b39d
George Peter Banyard
- Fix GH-9883 SplFileObject::__toString() reads next line in 6fbf81c674
- Fix performance degradation introduced in c2547ab7 in 86456574bb
- Fix GH-10011 (Trampoline autoloader will get reregistered and cannot be unregistered) in 608ddb0321
- Add a new
imap_is_open()
function to check that a connection object is still valid in 52a891aeaa
George Wang
- Use __atomic_xxxx() instead of __sync_xxxx() for lsapi in 4bdfce6c1a
Ilija Tovilo
- Disable opcache file_cache for observer preloading test in 09f071e63b
- Add wordpress to community build in cdc0a8b06b
Jakub Zelenka
- Introduce TEST_FPM_EXTENSION_DIR for FPM tests with shared extensions in db2d32f476
- Fix bug #68207: Setting fastcgi.error_header can result in a WARNING in 5a4520bc2b
- Fix bug #80669: FPM numeric user fails to set groups in 94702c56e0
- Fix GH-8517: FPM child pointer can be potentially uninitialized in c9c1934ff0
- Add a note to php.ini-* regarding the required order for GH-8620 in 9416186ff1
- Fix GH-9997: OpenSSL engine clean up segfault in 3d90a24e93
- Fix GH-9064: PHP fails to build if openssl was built with no-ec in ce57221376
- Fix GH-10000: Test failures when OpenSSL compiled with no-dsa in 500b28ad04
Mattias Ellert
- Fix compilation on RHEL 7 ppc64le (gcc 4.8) in a83923044c
Michael Voříšek
- Fix GH-9650: Can't initialize heap: [0x000001e7] in 8d65c2fee5
NathanFreeman
- Fix GH-9535 (unintended behavior change for
mb_strcut
in PHP 8.1) in fa0401b0b5
Petr Sumbera
- php-fpm: fix Solaris port events.mechanism in 72da2b02e2
Pierrick Charron
- Prepare PHP 8.2.1 in b7ff727ada
Sara Golemon
- Bump for 8.0.27 in ac508301c9
Stanislav Malyshev
- Improve fix for bug #81740 in 8c89155585
Tyson Andre
- Fix Windows
shmget()
wrt. IPC_PRIVATE in 7a983e281c
蝦米
- Fix GH-9769: Misleading error message for unpacking of objects in 93592ea743