PHP 8.1.10: Downloads, Changelog, News

Release Information

Release
8.1.10
PHP Version
PHP 8.1
Release Date
Release Type
Bug Fix Release
Release Status
Use PHP 8.1.30 instead
Branch Status
Security-Fixes Only

PHP 8.1 is currently only receiving security fixes. PHP 8.1.10 is not the latest version in the series, and using this release is not recommended. PHP 8.1.30 is the latest in the series.

Downloads

Source Code

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

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

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

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

ChangeLog

Core

  • Fixed --CGI-- support of run-tests.php.
  • Fixed incorrect double to long casting in latest clang.
  • Fixed bug GH-9266 (GC root buffer keeps growing when dtors are present).

Date

  • Fixed bug GH-8730 (DateTime::diff miscalculation is same time zone of different type).
  • Fixed bug GH-8964 (DateTime object comparison after applying delta less than 1 second).
  • Fixed bug GH-9106: (DateInterval 1.5s added to DateTimeInterface is rounded down since PHP 8.1.0).
  • Fixed bug #81263 (Wrong result from DateTimeImmutable::diff).

DBA

  • Fixed LMDB driver memory leak on DB creation failure
  • Fixed bug GH-9155 (dba_open("non-existing", "c-", "flatfile") segfaults)

IMAP

  • Fixed bug GH-9309 (Segfault when connection is used after imap_close()).

Intl

  • Fixed IntlDateFormatter::formatObject() parameter type.

MBString

  • Fixed bug GH-9008 (mb_detect_encoding(): wrong results with null $encodings).

OPcache

  • Fixed bug GH-9033 (Loading blacklist file can fail due to negative length).
  • Fixed bug GH-9164 (Segfault in zend_accel_class_hash_copy).

OpenSSL

  • Fixed bug GH-9339 (OpenSSL oid_file path check warning contains uninitialized path).

PDO_SQLite

  • Fixed bug GH-9032 (SQLite3 authorizer crashes on NULL values).

SQLite3

  • Fixed bug GH-9032 (SQLite3 authorizer crashes on NULL values).

Streams

  • Fixed bug GH-8472 (The resource returned by stream_socket_accept may have incorrect metadata).
  • Fixed bug GH-8409 (SSL handshake timeout leaves persistent connections hanging).

Commit List

Arnaud Le Blanc

  • Extended map_ptr before copying class table in GH-9188

Ben Ramsey

Christoph M. Becker

Denis Vaksman

Derick Rethans

Dmitry Stogov

  • Fix memory leak in 44b86aee31
  • JIT: Fix missing type stote in e70d282077
  • Fix type inference in d50875c822
  • Fix SSA reconstruction when body of "foreach" loop is removed in af1a7b7b72
  • Fix incorrect guard motion out of the loop in 69c10aed58
  • Tracing: Prevent recording types of variables used to pass zend_class_entry in 2758ff2a77
  • Fix order of checks to throw exception with better message in 18183ff9c7

Gabriel Caruso

George Peter Banyard

Gert de Pagter

  • Correct IntlDateFormatter::formatObject params in 05ed47ef12

Go Kudo

  • Remove ZEND_DVAL_TO_LVAL_CAST_OK in GH-9215
  • CI: macos-10.15 -> macos-11 in GH-9087

Ilija Tovilo

Jakub Zelenka

Michael Olšavský

twosee

Vladislav Senin

  • Fixes CI macOs, replacing now disabled tidyp dependency to tidy-html5 in 8aeae636e3

zeriyoshi

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 💜