PHP 8.3.24: Downloads, Changelog, News

Release Information

Release
8.3.24
PHP Version
PHP 8.3
Release Date
Release Type
Security Update
Release Status
Latest Release in 8.3
Branch Status
Supported

Latest release for PHP 8.3. This release contains security fixes, and it is recommended to update as soon as possible.
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.24 tag from the PHP Git repository.
git clone https://github.com/php/php-src.git --depth 1 --branch php-8.3.24
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.24-cli-alpine

Debian-based: More compatible with other components, complete, and are widely used.
docker pull php:8.3.24-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.24-fpm-alpine

Debian-based ZTS Apache: Includes Apache web server integrating PHP as an Apache module.
docker pull php:8.3.24-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.24-fpm

ChangeLog

Calendar

  • Fixed jewishtojd overflow on year argument.

Core

  • Fixed bug GH-18833 (Use after free with weakmaps dependent on destruction order).
  • Fix OSS-Fuzz #427814456.
  • Fix OSS-Fuzz #428983568 and #428760800.
  • Fixed bug GH-17204 -Wuseless-escape warnings emitted by re2c.

Curl

  • Fix memory leaks when returning refcounted value from curl callback.
  • Remove incorrect string release.

Intl

  • Fix memleak on failure in collator_get_sort_key().

LDAP

  • Fixed GH-18902 ldap_exop/ldap_exop_sync assert triggered on empty request OID.

MbString

  • Fixed bug GH-18901 (integer overflow mb_split).

OCI8

  • Fixed bug GH-18873 (OCI_RETURN_LOBS flag causes oci8 to leak memory).

Opcache

  • Fixed bug GH-18639 (Internal class aliases can break preloading + JIT).
  • Fixed bug GH-14082 (Segmentation fault on unknown address 0x600000000018 in ext/opcache/jit/zend_jit.c).

OpenSSL

  • Fixed bug #80770 (It is not possible to get client peer certificate with stream_socket_server).

PCNTL

  • Fixed bug GH-18958 (Fatal error during shutdown after pcntl_rfork() or pcntl_forkx() with zend-max-execution-timers).

Phar

  • Fix stream double free in phar.
  • Fix phar crash and file corruption with SplFileObject.

SOAP

  • Fixed bug GH-18990, bug #81029, bug #47314 (SOAP HTTP socket not closing on object destruction).
  • Fix memory leak when URL parsing fails in redirect.

SPL

  • Fixed bug GH-19094 (Attaching class with no Iterator implementation to MultipleIterator causes crash).

Standard

  • Fix misleading errors in printf().
  • Fix RCN violations in array functions.
  • Fixed GH-18976 pack() overflow with h/H format and INT_MAX repeater value.

Streams

  • Fixed GH-13264 (fgets() and stream_get_line() do not return false on filter fatal error).

Zip

  • Fix leak when path is too long in ZipArchive::extractTo().

Commit List

Ahmed Lekssays

Arnaud Le Blanc

  • Fix pcntl_rfork / pcntl_forkx with zend-max-execution-timers in aee1d7fb96
  • Add FreeBSD ZTS nightly build in 85522c0d48

Daniil Gentili

  • Fix use after free during shutdown destruction in 5cf3c2663b

David Carlier

Demon

  • Fix iconv tests skipped on windows in 5ff5ee0698
  • ext/gd: Drop useless and doubtful MSVC specific code (libgd/libgd@f1480ab) in 974526b244

Gina Peter Banyard

  • ext/soap/php_http.c: Fix memory leak of header value in 85a49d4198

Ilija Tovilo

Jakub Zelenka

Niels Dossche

  • Fix memory leaks when returning refcounted value from curl callback in c6b058b7d2
  • Fix GH-18901: integer overflow mb_split in a5f21ca700
  • Unbreak PRINTF_DEBUG macro usages in b50898894d
  • Fix misleading errors in printf() in 799ec7b8c5
  • Fix GH-18639: Internal class aliases can break preloading + JIT in 8e731ca622
  • Fix GH-14082: Segmentation fault on unknown address 0x600000000018 in ext/opcache/jit/zend_jit.c in 1e3d92f8a9
  • Fix RCN violations in array functions in 359a21f102
  • Fix OSS-Fuzz #427814456 in 91749844e6
  • curl: Remove incorrect string release on error in 11ea995ff3
  • Fix leak when path is too long in ZipArchive::extractTo() in 09c223de00
  • Fix GH-18990, bug #81029, bug #47314: SOAP HTTP socket not closing on object destruction in 69328ba304
  • Fix OSS-Fuzz #428983568 and #428760800 in 4aac98f145
  • Fix stream double free in phar in 32344c4dc4
  • Fix phar crash and file corruption with SplFileObject in 405be1c940
  • Fix GH-19094: Attaching class with no Iterator implementation to MultipleIterator causes crash in 71472268c0

Peter Kokot

  • Fix -Wuseless-escape warnings emitted by re2c in GH-19050

SakiTakamachi

Shivam Mathur

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.