PHP 7.2 reached EOL on , and all releases of this version no longer receive security or bug fixes. Using PHP 7.2.4 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.4 tag from the PHP Git repository.
git clone https://github.com/php/php-src.git --depth 1 --branch php-7.2.4
How to compile PHP
PHP can be compiled by setting up the dependencies, building the configure script (
Detailed articles on how to compile PHP are available for Ubuntu/Debian based systems and Fedora/RHEL based systems.
./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.
php-7.2.4-x64NTS.zip (24.5 MiB)
php-7.2.4-x86NTS.zip (22.82 MiB)
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.
php-7.2.4-x64TS.zip (24.64 MiB)
php-7.2.4-x86TS.zip (22.89 MiB)
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.4-cli-alpine
Debian-based: More compatible with other components, complete, and are widely used.
docker pull php:7.2.4-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.4-fpm-alpine
Debian-based ZTS Apache: Includes Apache web server integrating PHP as an Apache module.
docker pull php:7.2.4-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.4-fpm
ChangeLog
Core
- Fixed bug #76025 (Segfault while throwing exception in error_handler).
- Fixed bug #76044 ('date: illegal option -- -' in ./configure on FreeBSD).
FPM
- Fixed bug #75605 (Dumpable FPM child processes allow bypassing opcache access controls).
FTP
- Fixed
ftp_pasv
arginfo.
GD
- Fixed bug #73957 (signed integer conversion in
imagescale()
). - Fixed bug #76041 (null pointer access crashed php).
- Fixed imagesetinterpolation arginfo.
iconv
- Fixed bug #75867 (Freeing uninitialized pointer).
Mbstring
- Fixed bug #62545 (wrong unicode mapping in some charsets).
Opcache
- Fixed bug #75969 (Assertion failure in live range DCE due to block pass misoptimization).
OpenSSL
- Fixed openssl_* arginfos.
PCNTL
- Fixed bug #75873 (pcntl_wexitstatus returns incorrect on Big_Endian platform (s390x)).
Phar
- Fixed bug #76085 (Segmentation fault in buildFromIterator when directory name contains a \n).
Standard
Commit List
Anatol Belski
- Wrap var depending on conditional compilation in da0ed5cdb1
- Remove duplicated assignment in a468752e53
- Use more jobs with cppcheck in 08b4f3c745
- dos2unix in ef04bc4a51
- Update binary tools SDK branch for AppVeyor in c28b03a8e7
- 7.0.29 next in c61b56ed00
- Remove TSRMLS_* in 3c58b2c31a
- Include username into the file cache path in 27a603e811
- Fixed bug #76044 'date: illegal option -- -' in ./configure on FreeBSD in 60ac255897
- Guard platform dependent code in 281e2f8207
- Exclude /Qspectre for clang analyzer in 00bfc6eb49
- Disable PGO for phpdbg in 34b9f9dedf
- Fixed bug #76068 parse_ini_string fails to parse "[foo]\nbar=1|>baz" with segfault in 8417a23973
- Provide core includes for the resource compiler by default in 4dd1be2079
- Use string literal as format in eaa5b1f911
- Use literal as format in 16570b8c79
- Fix heap use after free in 4cd64aad8a
Bob Weinand
- Fix pcntl build on mac in 3f32bd9f43
- Fix bug #76074 (opcache corrupts variable in for-loop) in 9c6df8a238
- Fixup mess in NEWS file (mixed 7.2.3 and 7.2.4 NEWS) in 9d908c70d5
Christoph M. Becker
- Fix #76041: null pointer access crashed php in d83467d70b
- Fix #73957: signed integer conversion in
imagescale()
in f1b358c9a9 - Fix #62545: wrong unicode mapping in some charsets in 01ea314e8c
Dmitry Stogov
- Fixed "opcache.file_cache_fallback" mode in 350082ed71
- Fixed invalid destructor in 87553b0730
- Fixed invalid destructor in a83581e223
- Don't keep HashTable.pDestructor in SHM and always set it into ZVAL_PTR_DTOR in
zval_array_dup()
in b711a96acb - Replaced usafe reference from SHM to process memory with SHM to SHM reference in 50949c9332
- Replaced usafe reference from SHM to process memory with SHM to SHM reference in f31c4d5398
- More accurate symbolic constraints oferflow/unserflow handling (better fix for bug #76074) in 44ba557de5
- Revert "More accurate symbolic constraints oferflow/unserflow handling (better fix for bug #76074)." in 0643c7ab4d
Ferenc Kovacs
- 5.6.35 is next in 3db7427b71
Gabriel Caruso
- Remove getmxrr alias dns_get_mx test in 8a3f45f90b
- Fix openssl_* arginfos in 276b57316c
- Fix some arginfos in 0b8cfa6c78
- Fix imagesetinterpolation arginfo in a358211a75
George Wang
- release LiteSpeed SAPI 7.0 in 97ff815cbb
- [BUGFIX] calling
php_ini_activate_per_host_config()
with correct name length in 2b033607f3 - revert last change, for PHP7 no need to do
strlen()
+ 1 for hash look up in d4387fca0a
Joe
- bump versions in 1f0ea7fa4d
Joe Watkins
- fix news date in a827aefe47
Johannes Schlüter
- Fix negotiaton of MySQL auth plugin in 8f3c29aee1
- Fix a memleak with mysqlnd and SSL in 74ed42c169
- Fix NEWS in 73cd5fca2c
Mitch Hagstrand
- Fixed print_const_table function and zval types in ____printzv_contents in da5db1c9b2
Nikita Popov
- Fixed bug #75969 in 372bf8a923
- Fix
array_values()
andarray_keys()
func info in fd5644cd0b - Add RC flags in init_func_return_info in 1a50a50bcf
- Fix
get_object_vars()
func info in 8bdf9905da - Fix
curl_multi_close()
func info in acb9426a6b - Fix
hash_init()
andhash_copy()
func info in fa7c23ba27 - Fix COUNT range inference in 846e8a3ec9
- Disable negative range inference in 39974dd65d
- Handle overloaded GMP operators in type inference in ae837db8cf
- Fix
constant()
func info in 40ff001381 - Fix
ZEND_SR
range inference in 202989edf8 - Fix
ZEND_SL
range inference in c0abab5fca - Fix
pfsockopen()
func info in 500632ac13 - Fix incorrect printf modifiers in 7b3a2d16aa
- Revert "Fixed bug #75961 (Strange references behavior)" in fd5bd37ab1
Remi Collet
- Fix timezone var_dump from 51f2a580 in 528bc00d84
- factorization of duplicated code in 17164bcf8d
- add pkg-config example in extension skeleton in a93dba4324
- update NEWS in 25deb8f7d6
- Update versions for PHP 7.2.4 in e474a0439a
Sam Ding
- Fix #75873: pcntl_wexitstatus returns incorrect on Big_Endian platform (s390x) in 78c1ef2adb
Sara Golemon
- Now working on 7.2.4-dev in 5dd2a4185c
- Now working on 7.2.4-dev in 2cc8cf2994
Stanislav Malyshev
- Fix bug #75981: prevent reading beyond buffer start in 523f230c83
Thomas Petazzoni
ext/sockets
: make AI_IDN usage optional in 8489ecefd3
Xinchen Hui
- Fixed bug #75961 (Strange references behavior) in 94e9d0a2ae
- Update NEWS in 114e5d0206
- Fixed bug #76025 (Segfault while throwing exception in error_handler) in d5c171311d
- Update NEWS in 07fb188492
- Fixed bug #76085 (Segmentation fault in buildFromIterator when directory name contains a \n) in 4ee9098514
- Forgot NEWS in 998a2ddc37
- Forgot NEWs in 98fe858275