PHP 8.0.24: Downloads, Changelog, News

Release Information

Release
8.0.24
PHP Version
PHP 8.0
Release Date
Release Type
Security Update
Release Status
EOL, Use PHP 8.0.30
Branch Status
Unsupported

PHP 8.0 reached EOL on , and all releases of this version no longer receive security or bug fixes. Using PHP 8.0.24 is not recommended. PHP 8.0.30 is the latest version in the series.

Downloads

Source Code

Git Clone
Use Git to clone the 8.0.24 tag from the PHP Git repository.
git clone https://github.com/php/php-src.git --depth 1 --branch php-8.0.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.0.24-cli-alpine

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

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

ChangeLog

Core

  • Fixed bug GH-9323 (Crash in ZEND_RETURN/GC/zend_call_function)
  • Fixed bug GH-9361 (Segmentation fault on script exit #9379).
  • Fixed bug GH-9407 (LSP error in eval'd code refers to wrong class for static type).
  • Fixed bug #81727: Don't mangle HTTP variable names that clash with ones that have a specific semantic meaning. (CVE-2022-31629).

DOM

  • Fixed bug #79451 (DOMDocument->replaceChild on doctype causes double free).

FPM

  • Fixed bug GH-8885 (FPM access.log with stderr begins to write logs to error_log after daemon reload).
  • Fixed bug #77780 ("Headers already sent..." when previous connection was aborted).

GMP

  • Fixed bug GH-9308 (GMP throws the wrong error when a GMP object is passed to gmp_init()).

Intl

  • Fixed bug GH-9421 (Incorrect argument number for ValueError in NumberFormatter).

PDO_PGSQL

  • Fixed bug GH-9411 (PgSQL large object resource is incorrectly closed).

Phar

Reflection

  • Fixed bug GH-8932 (ReflectionFunction provides no way to get the called class of a Closure).
  • Fixed bug GH-9409 (Private method is incorrectly dumped as "overwrites").

Streams

  • Fixed bug GH-9316 ($http_response_header is wrong for long status line).

Commit List

Arnaud Le Blanc

Christoph M. Becker

David Carlier

  • opcache jit fix message format for OpenBSD in 52e312afb8
  • FPM fix strict prototype warnings in e2a5428ca0

Derick Rethans

  • Fix #81727: Don't mangle HTTP variable names that clash with ones that have a specific semantic meaning in c332950a86

Dmitry Menshikov

  • Fix GH-8885: access.log with stderr writes logs to error_log after reload in f92505cf24

Dmitry Stogov

Gabriel Caruso

George Peter Banyard

Ilija Tovilo

  • Private method incorrectly marked as "overwrites" in reflection in 1435fc6262
  • Fix lsp error in eval'd code referring to incorrect class for static type in d5373eac46
  • Fix undefined left shift in oci in aa7f4497bf
  • Skip oci tests that leak under asan in 4a8cca241f

Jakub Zelenka

Michael Voříšek

NathanFreeman

  • Fix bug #79451: Using DOMDocument->replaceChild on doctype causes double free in 1d4300d870
  • Fix #79451: DOMDocument->replaceChild on doctype causes double free in 6027d441c1

Nicolas Grekas

  • Fix GH-8932: Provide a way to get the called-scope of closures in GH-9299

Sara Golemon

Tim Starling

  • Fix GCC 9.4 uninitialized variable warning in 410e5d48a3
  • Fix GH-9323: crash when the VM enters userspace code via the GC in ba029fce68

Yurun

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.