PHP 8.3.10 is an old release of PHP 8.3 series. Using the latest version PHP 8.3.19 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.10
./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.10-cli-alpine
docker pull php:8.3.10-cli
docker pull php:8.3.10-fpm-alpine
docker pull php:8.3.10-apache
docker pull php:8.3.10-fpm
ChangeLog
Core
- Fixed bug GH-13922 (Fixed support for systems with sysconf(_SC_GETPW_R_SIZE_MAX) == -1).
- Fixed bug GH-14626 (Fix
is_zend_ptr()
for huge blocks). - Fixed bug GH-14590 (Memory leak in FPM test
gh13563-conf-bool-env.php
t. - Fixed OSS-Fuzz #69765.
- Fixed bug GH-14741 (Segmentation fault in Zend/zend_types.h).
- Fixed bug GH-14969 (Use-after-free in property coercion with __toString()).
- Fixed bug GH-14961 (Comment between -> and keyword results in parse error).
Dom
- Fixed bug GH-14702 (
DOMDocument::xinclude()
crash).
Fileinfo
- Fixed bug GH-14888 (README.REDIST.BINS refers to non-existing LICENSE).
Gd
ext/gd/tests/gh10614.phpt
: skip if no PNG support.- restored warning instead of fata error.
LibXML
- Fixed bug GH-14563 (Build failure with libxml2 v2.13.0).
Opcache
- Fixed bug GH-14550 (No warning message when Zend DTrace is enabled that opcache.jit is implictly disabled).
Output
- Fixed bug GH-14808 (Unexpected null pointer in Zend/zend_string.h with empty output buffer).
PDO
- Fixed bug GH-14712 (Crash with PDORow access to null property).
Phar
- Fixed bug GH-14603 (null string from zip entry).
PHPDBG
- Fixed bug GH-14596 (crashes with ASAN and ZEND_RC_DEBUG=1).
- Fixed bug GH-14553 (echo output trimmed at NULL byte).
Shmop
- Fixed bug GH-14537 (shmop Windows 11 crashes the process).
SPL
- Fixed bug GH-14639 (Member access within null pointer in ext/spl/spl_observer.c).
Standard
- Fixed bug GH-14775 (range function overflow with negative step argument).
- Fix 32-bit wordwrap test failures.
- Fixed bug GH-14774 (time_sleep_until overflow).
Streams
- Fixed bug GH-14930 (Custom stream wrapper dir_readdir output truncated to 255 characters in PHP 8.3).
Tidy
- Fix memory leak in
tidy_repair_file()
.
Treewide
- Fix compatibility with libxml2 2.13.2.
XML
- Move away from to-be-deprecated libxml fields.
- Fixed bug GH-14834 (Error installing PHP when
--with-pear
is used).
Commit List
Arnaud Le Blanc
- Support sysconf(_SC_GETPW_R_SIZE_MAX) == -1 in GH-13922
- Fix
is_zend_ptr()
for huge blocks in GH-14626 - Fix test race condition in 070779c874
Calvin Buckley
- Declare that this test needs iconv extension in 43e3f577b9
Christoph M. Becker
- Add test case for GH-13774 in 6d0db52896
- Fix skip condition of
gh13082.phpt
in 02a60be24d
David Carlier
- Fix GH-14596: phpdbg with asan and ZC_RC_DEBUG set crashes in 6704c60589
- Fix GH-14603: invalid null zip file entry in 686afc10bf
- Fix GH-14712: segfault on invalid object in c03196a5be
- Fix GH-14638: null dereference after XML parsing failure in 2edf12e87f
- Fix GH-14775: range overflow on negative step in 15bea9ed74
- Fix GH-14774 time_sleep_until overflow in 237518763f
Denis Ryabov
- Restore Warning instead of Fatal Error in
gd_webp.c
in b456ae8d34
Eric Mann
- Update versions for PHP 8.3.10 in ace55c8f67
Ilija Tovilo
- Fix syntax error in SWITCH VM in bc32a6bd4e
- Fix use-after-free in property coercion with __toString() in 8c312ba74b
Joe Cai
- Fix GH-14930: Custom stream wrapper dir_readdir output truncated to 255 characters in PHP 8.3 in 38501ed48a
Michael Orlitzky
- ext/standard/tests: use %d instead of bytes in an overflow message in a8d1955348
- ext/standard/tests: 32bit wordwrap tests aren't just for Windows in 68a0efedeb
- ext/standard/tests: strings/wordwrap_memory_limit_32bit.phpt has two outputs in 27dd393be9
ext/gd/tests/gh10614.phpt
: skip if no PNG support in 09957ab9a8
Niels Dossche
- Add SKIPIFs for upstream regression in libxslt in GH-14674
- Fix GH-14537: shmop Windows 11 crashes the process in 39a3266576
- Fix GH-14590: Memory leak in FPM test
gh13563-conf-bool-env.phpt
in 056bec72f4 - Fix GH-14702:
DOMDocument::xinclude()
crash in 42908f9f68 - Fix GH-14563: Build failure with libxml2 v2.13.0 in b08def5156
- Fix OSS-Fuzz #69765: Yield reference to nullsafe chain in d568337680
- Factor out common check for short-circuited ast in 8fd095669a
- Fix uninitialized (dummy) memory in
php_strtr_array()
in GH-14812 - Backport libxml2 2.13.2 fixes in GH-14816
- Fix GH-14808: Unexpected null pointer in Zend/zend_string.h with empty output buffer in 89c3e0346a
- NEWS for GH-14814 in 1006e1021e
- Fix GH-13688: Test curl_basic_008 can fail in GH-13693
- Fix GH-14553: Bug in phpdbg8.3 (also 8.1 and 8.2) echo output - trimmed at NULL byte (?) in 95889979f2
- Fix test conflict between
gzfile_basic.phpt
andgzfile_basic2.phpt
in 1e5f46fb20 - Port XML_GetCurrentByteIndex to public APIs in 8dc799aac7
- Stop relying on the sax2 flag directly in 6490a18271
- Stop relying on lastError directly in 823d0588f7
- Stop setting parse options directly in e5e15fd229
- NEWS for compatibility in XML in a66afbbe09
- Fix GH-14834: Error installing PHP when
--with-pear
is used in 67259e451d - Fix GH-14639: Member access within null pointer in ext/spl/spl_observer.c in 0d4e0c013e
- Fix GH-14550: No warning message when Zend DTrace is enabled that opcache.jit is implictly disabled in b44ad27a78
- Fix memory leak in
tidy_repair_file()
in c34def581a - Fix GH-14741: Segmentation fault in Zend/zend_types.h in eb8c3cb79a
Peter Kokot
- Use pattern tags for NDBM ext/dba/tests in GH-14755