PHP 7.2 reached EOL on , and all releases of this version no longer receive security or bug fixes. Using PHP 7.2.3 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.3 tag from the PHP Git repository.
git clone https://github.com/php/php-src.git --depth 1 --branch php-7.2.3
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.3-x64NTS.zip (24.42 MiB)
php-7.2.3-x86NTS.zip (22.76 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.3-x64TS.zip (24.56 MiB)
php-7.2.3-x86TS.zip (22.84 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.3-cli-alpine
Debian-based: More compatible with other components, complete, and are widely used.
docker pull php:7.2.3-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.3-fpm-alpine
Debian-based ZTS Apache: Includes Apache web server integrating PHP as an Apache module.
docker pull php:7.2.3-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.3-fpm
ChangeLog
Core
- Fixed bug #75864 ("
stream_isatty
" returns wrong value on s390x).
Apache2Handler
- Fixed bug #75882 (a simple way for segfaults in threadsafe php just with configuration).
Date
- Fixed bug #75857 (Timezone gets truncated when formatted).
- Fixed bug #75928 (Argument 2 for
DateTimeZone::listIdentifiers()
should acceptnull
). - Fixed bug #68406 (calling var_dump on a DateTimeZone object modifies it).
LDAP
- Fixed bug #49876 (Fix LDAP path lookup on 64-bit distros).
libxml2
- Fixed bug #75871 (use pkg-config where available).
PGSQL
- Fixed bug #75838 (Memory leak in
pg_escape_bytea()
).
Phar
- Fixed bug #54289 (
Phar::extractTo()
does not accept specific directories to be extracted). - Fixed bug #65414 (deal with leading slash while adding files correctly).
- Fixed bug #65414 (deal with leading slash when adding files correctly).
ODBC
- Fixed bug #73725 (Unable to retrieve value of varchar(max) type).
Opcache
- Fixed bug #75729 (opcache segfault when installing Bitrix).
- Fixed bug #75893 (file_get_contents $http_response_header variable bugged with opcache).
- Fixed bug #75938 (Modulus value not stored in variable).
SPL
- Fixed bug #74519 (strange behavior of AppendIterator).
Standard
Commit List
Anatol Belski
- 7.0.15 next in ea56fc840e
- Add switches for Spectre variant 1 mitigation in 043d53c789
- Fixed bug #73725 Unable to retrieve value of varchar(max) type in 2384ade53c
- Fix race conditions with Apache vhost vs. per dir config in 73eb5a78b9
- Fix race conditions with Apache vhost vs. per dir config in bced074124
- Ensure there are no line breaks in the error msg in 138ea7c3fe
- Switch to the new PHP SDK version on AppVeyor in b1ee215c69
- Finer conditions, so /Qspectre is already usable with latest vc15 in 1368aea352
- Extend
skipif
check in 2235da59af
Bishop Bettini
- Fixed bug #54289 in fa586cee3e
- Fixed bug #65414 in 4765ba7dc3
- Fixed bug #65414 in d806d0315f
Chris Lamb
- Fix SOURCE_DATE_EPOCH to not vary on timezones in a694433bff
Christoph M. Becker
- Fix #75878:
RecursiveTreeIterator::setPostfix
has wrong signature in 4bd7658e1b - Revert "Fix #75878:
RecursiveTreeIterator::setPostfix
has wrong signature" in a882f95e39
CHU Zhaowei
- fix #74519 strange behavior of AppendIterator in 495508eceb
- Fixed bug #74519 strange behavior of AppendIterator in 01eafceea1
- Fixed bug #68406 calling var_dump on a DateTimeZone object modifies it in 47a3988236
David Zuelke
- Fixed bug #49876 lib path on 64bit distros in 8000334538
Derick Rethans
- Updated to version 2018.3 (2018c) in f80e59a566
- Empty merge in 3bdcb6cf3e
- Updated to version 2018.3 (2018c) in 6dbe046154
- Sync with timelib 2017.06 in 5feb53964f
Dmitry Stogov
- Restore initial values on graceful server restart in aad12cb49c
Gabriel Caruso
- Fix #75857: Timezone gets truncated when formatted in f706937120
Jakub Zelenka
- Use correct certs for SNI server tests in fe2ac52d50
- Use correct certs for SNI server tests with separate key and cert in 3348d40a7b
jhdxr
- Fixed bug #68406 calling var_dump on a DateTimeZone object modifies it in 070211b3e3
Michael Orlitzky
ext/session
: catch incompatible configure flags earlier in 3fe9e10a1b
Michael Wallner
- fix bug #75916 DNS_CAA record results contain garbage in 42f2ae0572
Mitch Hagstrand
- Enhancements and fixes for print_pi in gdbinit in 01f7998db0
Nikita Popov
- Fixed bug #75729 in d9e71169e6
- Fixed bug #75893 in 1391a0fa0b
- Fixed bug #75938 in 7aac61ce76
Pedro Lacerda
- Fixed bug #75928 in fddd7e38bd
Pedro Magalhães
- Fixes bug #75871 Use pkg-config for libxml2 if available in 5673c641dc
Philip Prindeville
- Be consistent in clearing out in
php_iconv_string()
in aad76a9b79
Remi Collet
- next is 7.2.3 in 5a54107879
Sam Ding
- fixed Big_endian issue on s390x for stream test cases in a8c6b36d62
Sara Golemon
- BigEndian fix for ignore_user_abort. Use
zend_bool
to match OnUpdateBool in d46d53a7bc - Use Z_EXPECTED_LONG to initialize FAST_ZPP parsing loop in e88e83d3e5
- Fix alignment of PG struct cause by ignore_user_abort big endian fix in 3ffdf6c088
- Revert "Update NEWS for 7.2.3" in 7ae627ccea
- NEWS for 7.2.3 in d1834a3cb0
- Update versions for PHP 7.2.3 in 757feac15a
Stanislav Malyshev
- Fix bug #75981: prevent reading beyond buffer start in 7cf491b661
Thomas Punt
- Use the correct freeing function in fb128f6512
Xinchen Hui
- Fixed NEWS in 9206afc652
- Fixed #75838 (Memory leak in
pg_escape_bytea()
) in fb205020ce - Updated NEWS in 2dc1cd1154