PHP 7.4.18: Downloads, Changelog, News

Release Information

PHP Version
PHP 7.4
Release Date
Release Type
Bug Fix Release
Release Status
EOL, Use PHP 7.4.33
Branch Status

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


Source Code

Git Clone
Use Git to clone the 7.4.18 tag from the PHP Git repository.
git clone --depth 1 --branch php-7.4.18
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 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.4.18-cli-alpine

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

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

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



  • Fixed bug #80781 (Error handler that throws ErrorException infinite loop).
  • Fixed bug #75776 (Flushing streams with compression filter is broken).


  • Fixed bug #80817 (dba_popen() may cause segfault during RSHUTDOWN).


  • Fixed bug #66783 (UAF when appending DOMDocument to element).


  • Fixed bug #80024 (Duplication of info about inherited socket after pool removing).


  • Fixed bug #80880 (SSL_read on shutdown, ftp/proc_open).


  • Fixed bug #80710 (imap_mail_compose() header injection).


  • Fixed bug #80763 (msgfmt_format() does not accept DateTime references).


  • Fixed bug #51903 (simplexml_load_file() doesn't use HTTP headers).
  • Fixed bug #73533 (Invalid memory access in php_libxml_xmlCheckUTF8).


  • Fixed bug #80713 (SegFault when disabling ATTR_EMULATE_PREPARES and MySQL 8.0).
  • Fixed bug #80837 (Calling stmt_store_result after fetch doesn't throw an error).


  • Fixed bug #80805 (create simple class and get error in
  • Fixed bug #80950 (Variables become null in if statements).


  • Fixed bug #79812 (Potential integer overflow in pcntl_exec()).


  • Fixed bug #80866 (preg_split ignores limit flag when pattern with \K has 0-width fullstring match).


  • Fixed bug #80783 (PDO ODBC truncates BLOB records at every 256th byte).


  • Fixed bug #80892 (PDO::PARAM_INT is treated the same as PDO::PARAM_STR).


  • Fixed bug #80757 (Exit code is 0 when could not open file).


  • Fixed bug #80774 (session_name() problem with backslash).
  • Fixed bug #80889 (Cannot set save handler when save_handler is invalid).


  • Fixed bug #69668 (SOAP special XML characters in namespace URIs not encoded).


  • Fixed bug #78719 (http wrapper silently ignores long Location headers).
  • Fixed bug #80771 (phpinfo(INFO_CREDITS) displays nothing in CLI).
  • Fixed bug #80838 (HTTP wrapper waits for HTTP 1 response after HTTP 101).
  • Fixed bug #80915 (Taking a reference to $_SERVER hides its values from phpinfo()).
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.