PHP 8.0.14: Downloads, Changelog, News

Release Information

Release
8.0.14
PHP Version
PHP 8.0
Release Date
Release Type
Bug Fix Release
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.14 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.14 tag from the PHP Git repository.
git clone https://github.com/php/php-src.git --depth 1 --branch php-8.0.14
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.14-cli-alpine

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

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

ChangeLog

Core

  • Fixed bug #81582 (Stringable not implicitly declared if __toString() came from a trait).
  • Fixed bug #81591 (Fatal Error not properly logged in particular cases).
  • Fixed bug #81626 (Error on use static:: in __сallStatic() wrapped to Closure::fromCallable()).
  • Fixed bug #81631 (::class with dynamic class name may yield wrong line number).

FPM

  • Fixed bug #81513 (Future possibility for heap overflow in FPM zlog).

GD

  • Fixed bug #71316 (libpng warning from imagecreatefromstring).

IMAP

  • Fixed bug #81649 (imap_(un)delete accept sequences, not single numbers).

OpenSSL

  • Fixed bug #75725 (./configure: detecting RAND_egd).

PCRE

  • Fixed bug #74604 (Out of bounds in php_pcre_replace_impl).

SPL

  • Fixed bug #81587 (MultipleIterator Segmentation fault w/ SimpleXMLElement attached).

Standard

  • Fixed bug #81618 (dns_get_record fails on FreeBSD for missing type).
  • Fixed bug #81659 (stream_get_contents() may unnecessarily overallocate).

Commit List

Christoph M. Becker

David Carlier

  • Fix leaks for AppArmor based distros in case the profile creation fails in b1e6fdefd4
  • OpenBSD ZTS build fix in fb3e646f6b

Derick Rethans

Dmitry Stogov

  • Fixed type inference for FETCH_DIM_W without use in 66d93c63ff
  • Tracing JIT: Fixed incorrect guard elimination in 34d22acc7e
  • JIT: Fixed incorrect guard elimination in 7bf63243e1
  • Don't call _zend_hash_index_find() for packed arrays in e868ded6ef
  • JIT: Fixed incorrect guard elimination in 8fe808207f
  • Fixed incorrect reference counter inference in 535a0553e8
  • Tracing JIT: Fixed incorrect tracing type inference in 203c1b807e
  • JIT: Fixed memory leak in 45683703f1
  • Tracing JIT: Fixed incorrect assumption about in-memeory zval type in 3dba5566ce
  • Tracing JIT: Fixed register allocation in 3081423706
  • JIT: Fixed incorrect MOD into BW_AND optimization in 64915775a7
  • Partially fix handling of exceptions thrown in interrupt handlers in fa0b84a06b
  • JIT: Partially fix handling of exceptions thrown in interrupt handlers in 5380b415a2
  • Fixed incorrect guard elimination in 12d02e6227
  • Fixed test in 64fde17042
  • JIT: Fixed reference-counting inference in 292d76d8a4
  • Tracing JIT: Fixed failure on non-optimized op_arrays (op_array->T may be above ssa->vars_count) in 85066fd88e
  • Tracing JIT: Fixed abstract stack consistency for [QM_]ASSIGN of CV to itself in fc35a6b93c
  • JIT: Fixed memory lieak in 48a65fef6f
  • JIT: Fixed memory leak in fac78ee760
  • JIT: Fixed memory leak in Zend/tests/concat_002.phpt introduced by fac78ee7 in 9dd3e8be8a
  • Fixed incorrect DCE for ADD_ARRAY_ELEMENT instruction in f302430c72
  • Fixed incorrect refcountion inference for BW_NOT in 3c53a9fd73
  • Fixed incorrect narrowing to double in f9518c3850
  • JIT: Fixed use-after-free caused by shift by negative number in 49f44e7ffc
  • Disable type narrowing optimization when we contruct SSA for JIT in 297117bbc5
  • JIT: Fix named arguments handling in 8f4cfe04eb
  • JIT: Fix named arguments handling in d955415114
  • JIT: Fix exception handling when next array element is already occupied in aff115547f
  • Fixed type inference (it's safe to ignore reference counting narrowing) in 86430e8e01
  • JIT: Fix uninitialized result of ASSIGN_DIM[_OP] after clobbering array by user error handler in 6e1fe96962
  • JIT: Fix incorrect reference counting inference in c1036194d6
  • Fix crash after indirect modification of string by user error handler in df434f056f
  • JIT: Fix incorrect code produced for BOOL_NOT and [double, undef] operand in e7b31f57ec
  • Use proper functions in 9f6ab78610
  • Fix clobering of operand by error handler in assignment to string offset in 09547c64c2
  • Fix clobering of operand by error handler in assignment to string offset (optimization and JIT support) in 4595a57e99

George Peter Banyard

Jakub Zelenka

  • Fix bug #81513 (Future possibility for heap overflow in FPM zlog) in b2cf9b7ec7
  • Increase script sleep in FPM process idle test in fc67967190
  • Increase read timeout in FPM process idle test in 2f8407f185
  • Add skip for FPM process idle flaky test in 81513e6285

Matt

Nikita Popov

Petar Obradović

  • Fix invalid mbstring config reference in 87069d3dcc

Remi Collet

Sara Golemon

Tyson Andre

  • Fix use after free when WeakMap is modified during field write in 241bd3f454

Дилян Палаузов

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 💜