PHP 8.3.11: Downloads, Changelog, News

Release Information

Release
8.3.11
PHP Version
PHP 8.3
Release Date
Release Type
Bug Fix Release
Release Status
Latest
Branch Status
Supported (Latest)

Latest PHP release in the latest version.
PHP 8.3 continues to receive bug fixes and security fixes until 2025-12-31.

Downloads

Source Code

Git Clone
Use Git to clone the 8.3.11 tag from the PHP Git repository.
git clone https://github.com/php/php-src.git --depth 1 --branch php-8.3.11
How to compile PHP
PHP can be compiled by setting up the dependencies, building the configure script (./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

Non-Thread Safe Builds
Non-Thread Safe (NTS) builds are single-threaded PHP builds. They can be used on web servers that integrate PHP over FastCGI protocol, such as Nginx, Caddy, and IIS.
Thread-Safe Builds
Thread-Safe (TS) builds are multi-thread PHP builds, often used to integrate PHP as a Server API for multithreaded servers. The most common use case is using PHP as an Apache module.

Docker/Podman Containers

PHP CLI
PHP CLI Containers images only include the PHP CLI, and no FPM or Apache modules. The Alpine builds are lightweight, but may introduce incompatibilities due to their musl builds. Albeit their larger size, the Debian-based (without the "-alpine" suffix) images are more complete, and widely used.

Alpine-based: Lightweight, but may introduce incompatibilities due to their musl builds.
docker pull php:8.3.11-cli-alpine

Debian-based: More compatible with other components, complete, and are widely used.
docker pull php:8.3.11-cli
PHP CLI + Web Server Integration
These container images include PHP CLI, and a web server integration. FPM container images can be integrated with web servers such as Nginx, Caddy, and Apache with Event MPM. The Apache container images include Apache web server, integrating PHP as an Apache module.

Alpine-based: Lightweight, but may introduce incompatibilities due to their musl builds.
docker pull php:8.3.11-fpm-alpine

Debian-based ZTS Apache: Includes Apache web server integrating PHP as an Apache module.
docker pull php:8.3.11-apache

Debian-based NTS FPM: PHP-FPM, can be integrated with Nginx, Caddy, and other web servers over Fast CGI.
docker pull php:8.3.11-fpm

ChangeLog

Core

  • Fixed bug GH-15020 (Memory leak in Zend/Optimizer/escape_analysis.c).
  • Fixed bug GH-15023 (Memory leak in Zend/zend_ini.c).
  • Fixed bug GH-13330 (Append -Wno-implicit-fallthrough flag conditionally).
  • Fix uninitialized memory in network.c.
  • Fixed bug GH-15108 (Segfault when destroying generator during shutdown).
  • Fixed bug GH-15275 (Crash during GC of suspended generator delegate).

Curl

  • Fixed case when curl_error returns an empty string.

DOM

  • Fix UAF when removing doctype and using foreach iteration.

FFI

  • Fixed bug GH-14286 (ffi enum type (when enum has no name) make memory leak).

Hash

  • Fix crash when converting array data for array in shm in xxh3.

Intl

  • Fixed bug GH-15087 (IntlChar::foldCase()'s $option is not optional).

Opcache

  • Fixed bug GH-13817 (Segmentation fault for enabled observers after pass 4).
  • Fixed bug GH-13775 (Memory leak possibly related to opcache SHM placement).

Output

  • Fixed bug GH-15179 (Segmentation fault (null pointer dereference) in ext/standard/url_scanner_ex.re).

PDO_Firebird

  • Fix bogus fallthrough path in firebird_handle_get_attribute().

PHPDBG

  • Fixed bug GH-13199 (EOF emits redundant prompt in phpdbg local console mode with libedit/readline).
  • Fixed bug GH-15268 (heap buffer overflow in phpdbg (zend_hash_num_elements() Zend/zend_hash.h)).
  • Fixed bug GH-15210 use-after-free on watchpoint allocations.

Random

  • Fixed part of bug GH-15381, checking getrandom availability on solaris.

Soap

  • Fixed bug #55639 (Digest autentication dont work).
  • Fix SoapFault property destruction.
  • Fixed bug GH-15252 (SOAP XML broken since PHP 8.3.9 when using classmap constructor option).

Standard

  • Fix passing non-finite timeout values in stream functions.
  • Fixed GH-14780 p(f)sockopen timeout overflow.
  • Fixed GH-15653 overflow on fgetcsv length parameter.

Streams

  • Fixed bug GH-15028 (Memory leak in ext/phar/stream.c).
  • Fixed bug GH-15034 (Integer overflow on stream_notification_callback byte_max parameter with files bigger than 2GB).
  • Reverted fix for GH-14930 (Custom stream wrapper dir_readdir output truncated to 255 characters).

Tidy

  • Fix memory leaks in ext/tidy basedir restriction code.

Commit List

Arnaud Le Blanc

  • Hint the opcache shm mapping location only when JIT is enabled in 929536b697
  • Fix build on platforms without JIT support in GH-15069
  • Fix destruction of generator running in fibers during shutdown in GH-15158
  • Fix crash during GC of suspended generator delegate in GH-15275

Bob Weinand

Christoph M. Becker

  • Revert "Skip bug45161.phpt on Windows" in 355baf982e
  • Update the php-sdk-binary-tools to php-sdk-2.3.0 in 93a9a9b4a4
  • Fix GH-15087 IntlChar::foldCase()'s $option is not optional in 5fbda73099
  • Fix type incompatibility in assignment in af789afbe8
  • Fix odbc_data_source_001.phpt in 6713d51631
  • zend_enum: Rename try parameter to avoid conflict with C++ in 423fc811bd
  • Fix test expectation in 1b52ecd78a

David Carlier

disservin

  • Update ci actions/checkout to v4 in GH-15283

Dmitry Stogov

  • Regenerate FFI parser using HEAD version of LLK in 13e9b40517
  • Fix Windows build in d6efff7254
  • Workaraound against false positive GCC array bounds error in GH-15078

Ilija Tovilo

Jakub Zelenka

Levi Morrison

LoongT4o

  • Fix the JIT buffer relocation failure at the corner case in GH-11266

Niels Dossche

  • Fix bug #55639: Digest autentication dont work in 911dc5b46c
  • Fix GH-15020: Memory leak in Zend/Optimizer/escape_analysis.c in 03d73182d9
  • Fix GH-15023: Memory leak in Zend/zend_ini.c in 8c19efdc97
  • Fix GH-15028: Memory leak in ext/phar/stream.c in 5996227f88
  • Fix memory leaks in ext/tidy basedir restriction code in 8de7ccb29b
  • Fix GH-15034: Integer overflow on stream_notification_callback byte_max parameter with files bigger than 2GB in cfcc2a3fda
  • Fix GH-14286 (ffi enum type (when enum has no name) make memory leak) in c0de7214aa
  • Fix passing non-finite timeout values in stream functions in fdcfd62b9b
  • Fix bogus fallthrough path in firebird_handle_get_attribute() in b8e9c5ba6a
  • Fix uninitialized memory in network.c in 40551dd74b
  • Fix CI failure after Curl update in GH-15124
  • Fix nightly failure in test variation due to number of temp variables varying when observers are enabled in 4df858602a
  • Fix CI failure on macOS after Curl update in fdae7c23f0
  • Fix UAF when removing doctype and using foreach iteration in b282dd749f
  • Fix GH-15179: Segmentation fault (null pointer dereference) in ext/standard/url_scanner_ex.re in 67ce8759e8
  • Fix SoapFault property destruction in 11fbe8801b
  • Fix crash when converting array data for array in shm in xxh3 in ca84662c87
  • Revert "Fix bug #69280: SoapClient classmap doesn't support fully qualified class name (#14398)" in 28290655e8
  • Fix GH-15268: heap buffer overflow in phpdbg (zend_hash_num_elements() Zend/zend_hash.h) in a6c547d1dd
  • Fix uninitialized value watchpoint_hit in 2e26559fcd
  • Add necessary SKIPIFs to new phpdbg tests in 4d71580e00

Peter Kokot

  • Append -Wno-implicit-fallthrough flag conditionally in GH-13331
  • Fix GH-13199: Redundant prompt in phpdbg with libedit/readline in dc670cb7f6
Subscribe to PHP.Watch newsletter for monthly updates

You will receive an email on last Wednesday of every month and on major PHP releases with new articles related to PHP, upcoming changes, new features and what's changing in the language. No marketing emails, no selling of your contacts, no click-tracking, and one-click instant unsubscribe from any email you receive.