PHP 8.2.22: Downloads, Changelog, News

Release Information

Release
8.2.22
PHP Version
PHP 8.2
Release Date
Release Type
Bug Fix Release
Release Status
Use PHP 8.2.24 instead
Branch Status
Supported

PHP 8.2.22 is an old release of PHP 8.2 series. Using the latest version PHP 8.2.24 is highly recommended.
PHP 8.2 continues to receive bug fixes and security fixes until 2024-12-31.

Downloads

Source Code

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

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

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

Debian-based NTS FPM: PHP-FPM, can be integrated with Nginx, Caddy, and other web servers over Fast CGI.
docker pull php:8.2.22-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.phpt.
  • 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).

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).

SimpleXML

  • Fixed bug GH-14638 (null dereference after XML parsing failure).

SPL

  • Fixed bug GH-14639 (Member access within null pointer in ext/spl/spl_observer.c).

Standard

  • Fix 32-bit wordwrap test failures.
  • Fixed bug GH-14774 (time_sleep_until overflow).

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

David Carlier

Denis Ryabov

  • Restore Warning instead of Fatal Error in gd_webp.c in b456ae8d34

Ilija Tovilo

  • Fix use-after-free in property coercion with __toString() in 8c312ba74b

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

Peter Kokot

  • Use pattern tags for NDBM ext/dba/tests in GH-14755

Pierrick Charron

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.

Support PHP.Watch — If you find the articles, version information, Codex, and other PHP.Watch contributions useful, consider supporting through GitHub Sponsors. Your sponsorship helps dedicate more time to creating valuable content and improving the PHP community. Together, we can keep the momentum going — thank you for your support!

Thanks to the highest tier sponsor: @TomasVotruba for your generous support to keep PHP.Watch moving 💜