PHP 7.2.15: Downloads, Changelog, News

Release Information

Release
7.2.15
PHP Version
PHP 7.2
Release Date
Release Type
Bug Fix Release
Release Status
EOL, Use PHP 7.2.34
Branch Status
Unsupported

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

Downloads

Source Code

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

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

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

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

ChangeLog

Core

  • Fixed bug #77339 (__callStatic may get incorrect arguments).
  • Fixed bug #77494 (Disabling class causes segfault on member access).
  • Fixed bug #77530 (PHP crashes when parsing (2)::class).

Curl

  • Fixed bug #76675 (Segfault with H2 server push).

GD

  • Fixed bug #73281 (imagescale(…, IMG_BILINEAR_FIXED) can cause black border).
  • Fixed bug #73614 (gdImageFilledArc() doesn't properly draw pies).
  • Fixed bug #77272 (imagescale() may return image resource on failure).
  • Fixed bug #77391 (1bpp BMPs may fail to be loaded).
  • Fixed bug #77479 (imagewbmp() segfaults with very large images).

ldap

  • Fixed bug #77440 (ldap_bind using ldaps or ldap_start_tls()=exception in libcrypto-1_1-x64.dll).

Mbstring

  • Fixed bug #77454 (mb_scrub() silently truncates after a null byte).

MySQLnd

  • Fixed bug #75684 (In mysqlnd_ext_plugin.h the plugin methods family has no external visibility).

Opcache

  • Fixed bug #77361 (configure fails on 64-bit AIX when opcache enabled).

OpenSSL

  • Fixed bug #77390 (feof might hang on TLS streams in case of fragmented TLS records).

PDO

  • Fixed bug #77273 (array_walk_recursive corrupts value types leading to PDO failure).

phpdbg

  • Fixed bug #76596 (phpdbg support for display_errors=stderr).

Sockets

  • Fixed bug #76839 (socket_recvfrom may return an invalid 'from' address on MacOS).

Standard

  • Fixed bug #77395 (segfault about array_multisort).
  • Fixed bug #77439 (parse_str segfaults when inserting item into existing array).

Commit List

Abyr Valg

  • Add a test for fragmented SSL packets in 0c84c2ef50

Alexander Kurilo

  • Regenerate certs for openssl tests in 687dad3674
  • Regenerate certs for openssl tests in f51062523d
  • Regenerate certs for openssl tests in e3e3289bd1
  • Generate certs for openssl tests on the fly in 1fab01be5b
  • Fix cleaning up after openssl_pkcs7_verify_basic test in 1a1e12c2a9

Anatol Belski

  • Update binary SDK version for AppVeyor in 3c7dc7b4c4
  • Add memory check to the test in 222fa032d2
  • Increase timeout for test on AppVeyor in 54a2b42778
  • Fixed bug #75684 In mysqlnd_ext_plugin.h the plugin methods family has no external visibility in 7b3f8e746a
  • Update SDK version for AppVeyor in 8f66ca8189

Andrey Hristov

Christoph M. Becker

Derick Rethans

  • Updated to version 2018.9 (2018i) in 81da7f75e3
  • Update tests due to data changes in tzdata 2018i in bd1d2c7bfe

Dmitry Stogov

  • Removed /e modifirer and fixed ws in 8db63adb6d
  • Fixed bug #77339 (__callStatic may get incorrect arguments) in 7e597f48e9
  • Backport later interned strings destruction in 5888fbde0d
  • Fixed bug #77494 (Disabling class causes segfault on member access) in 73f222d722

ekinhbayar

George Wang

Jakub Zelenka

  • Update and integrate openssl client proxy test in d9b29029f9
  • Fix bug #77390 (feof might hang on TLS streams in case of fragmented TLS records) in dc2ffdeed7

Kevin Adler

  • Fix bug #77361 (configure fails on 64-bit AIX when opcache enabled) in 332b58f865

Lauri Kenttä

Michael Meyer

  • Initialize s_un (sockaddr_un) to zero before using it. Fixes #76839 in 3c42c784c2

Nikita Popov

Ondřej Surý

  • Fix rl_completion_matches detection in 1ea58b6e78

Pedro Magalhães

Remi Collet

Sara Golemon

Stanislav Malyshev

  • Fix bug #77242 (heap out of bounds read in xmlrpc_decode()) in 4fc0bceb7c
  • Fix bug #77247 (heap buffer overflow in phar_detect_phar_fname_ext) in 428d8164ff
  • Fix bug #77370 - check that we do not read past buffer end when parsing multibytes in 20407d06ca
  • Fix bug #77371 (heap buffer overflow in mb regex functions - compile_string_node) in 28362ed4fa
  • Fix bug #77380 (Global out of bounds read in xmlrpc base64 code) in 1cc2182bcc
  • Fix more issues with encodilng length in c95daa9c75
  • Fix bug #77242 (heap out of bounds read in xmlrpc_decode()) in 9c62b95e5e
  • Fix bug #77247 (heap buffer overflow in phar_detect_phar_fname_ext) in 78bd347774
  • Fix bug #77370 - check that we do not read past buffer end when parsing multibytes in deb06bbb9c
  • Fix bug #77371 (heap buffer overflow in mb regex functions - compile_string_node) in c6e34d91b8
  • Fix bug #77380 (Global out of bounds read in xmlrpc base64 code) in 4feb9e66ff
  • Fix more issues with encodilng length in 31f59e1f30
  • Fix #77369 - memcpy with negative length via crafted DNS response in 8d3dfabef4
  • Fix test in 0c35032012
  • Add NEWS in 25c95752d6
  • Add NEWS in 08bb0ce4e4
  • Fix tests - newer versions check Unicode in d0d0d922de
  • Fix bug #77418 - Heap overflow in utf32be_mbc_to_code in 9d6c59eeea
  • Still leaking for some reason, XFAIL for now, I'll look into it later in 27625f063e

twosee

  • Prefix error_code with underscore in FastZPP implementation in 6305119a51

wbob

  • document open_basedir and realpath cache coupling in php.ini in 5ac9990ddf

Xinchen Hui

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.