PHP 8.3.0RC2 is an old release of PHP 8.3 series. Using the latest version PHP 8.3.16 is highly recommended.
PHP 8.3 continues to receive bug fixes and security fixes until 2025-12-31.
Downloads
Source Code
git clone https://github.com/php/php-src.git --depth 1 --branch php-8.3.0RC2
./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.3.0RC2-cli-alpine
docker pull php:8.3.0RC2-cli
docker pull php:8.3.0RC2-fpm-alpine
docker pull php:8.3.0RC2-apache
docker pull php:8.3.0RC2-fpm
Commit List
Calvin Buckley
- Fix memory leak with failed SQLPrepare in a022ec53bd
- Fix persistent procedural ODBC connections not getting closed in 5a2b251610
- ODBC unit tests shouldn't override odbc.ini location in a648d39297
Dmitry Stogov
- Fixed uninitialized EX(opline) access (possible Zend/tests/gh12073.phpt crash) in f1f608bf53
- Fixed tracing jit for BIND_INIT_STATIC_OR_JMP in 95edb50b58
- Fix ws in 3ffa1c4c3e
- Fixed tracing JIT support for CALLABLE_CONVERT in GH-12156
Eric Mann
- Update versions for PHP 8.3.0RC2 in 611f06b2a1
Filip Zrůst
- Remove CPP when invoking dtrace utility in 02b3fb1f6b
George Peter Banyard
- Fix GH-11876:
ini_parse_quantity()
accepts invalid quantities in d229a480ad - Add tests for oss-fuzz-61469: Undef dynamic property in ++/-- unset in error handler in 013bb5769b
- Fixed bug GH-12020:
intl_get_error_message()
broken afterMessageFormatter::formatMessage()
fails in a579fa807c - Fix OSS Fuzz #61865: Undef variable in ++/-- for declared property that is unset in error handler in 8a392eddf9
- streams: Checking if a stream is castable should not emit warnings for user defined streams in d68073c23b
Ilija Tovilo
- Skip dl() tests on ASAN in fb0f4215de
- Increase
run-tests.php
timeout for asan in f4a6a6d096 - Include branch in benchmarking information in ee6f9e294c
- Fix master branch check in find-target-branch.bat in 9ce9c11ee8
xfail
mbstring test on Windows 32-bit in 6b74f1f745- Fix freeing of incompletely initialized closures in af2110e664
- Revert 479e6593 in 3433dab5f7
- Skip profiling of sqlite3_step in bb31a75321
- Revert "Skip profiling of sqlite3_step" in 3fb09940fc
- Fix
zend_separate_if_call_and_write
for FUNC_ARGs in 748adf18fc - Improve invalid cpp modifier message in 011071a3b3
Jakub Zelenka
- Extend workflow matrix and nighly with PHP-8.3 in 300ad65c7c
- Fix FPM UDS test for very long name check by extending its length in ea87501aee
- Fix GH-12077: Check lsof functionality in socket on close test in fe30c5098f
- Fix GH-12151: str_getcsv ending with escape zero segfualt in 64ebadcac5
ju1ius
- adds failing test case for GH-12060 in 9658d9ada4
- Prevents double call to internal iterator rewind handler in da7a66d647
Máté Kocsis
- Fix the class synopsis of Throwable in 597aeb1246
- Align class name detection to the new class synopsis format in c5fb8b6a6b
- Fix type of the
PHP_FLOAT_DIG
constant in 58657ff26a - Fix GH-12123 Make _ZEND_TYPE_PREFIX apply only for MSVC in 45c7e3b06b
Niels Dossche
- Fix GH-11972: RecursiveCallbackFilterIterator regression in 8.1.18 in ffd7018fcd
- Fix GH-11972: RecursiveCallbackFilterIterator regression in 8.1.18 in 1cdcbc05b0
- Tweak behaviour of dynamic properties wrt error handlers in eee1617f38
- Update bundled pcre2 to 10.42 in c4e8f652c5
- Fix GH-11878: SQLite3 callback functions cause a memory leak with a callable array in 07a9d2fb32
- Fix build with sqlite3 gc and fci/fcc api in 1d59b37742
- Use
zend_get_gc_buffer_add_fcc()
in 49980ee89d - Fix #52751: XPath processing-
instruction()
function is not supported in 107443b311
Remi Collet
- ensure displays_errors is off (default) in 1f2cfd8009
- zip: add new test for dynamic files in 57123ee489