PHP 7.4 reached EOL on , and all releases of this version no longer receive security or bug fixes. Using PHP 7.4.20 is not recommended. PHP 7.4.33 is the latest version in the series.
Downloads
Source Code
git clone https://github.com/php/php-src.git --depth 1 --branch php-7.4.20
./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
Docker/Podman Containers
docker pull php:7.4.20-cli-alpine
docker pull php:7.4.20-cli
docker pull php:7.4.20-fpm-alpine
docker pull php:7.4.20-apache
docker pull php:7.4.20-fpm
ChangeLog
Core
- Fixed bug #80929 (Method name corruption related to repeated calls to call_user_func_array).
- Fixed bug #80960 (
opendir()
warning wrong info when failed on Windows). - Fixed bug #67792 (HTTP Authorization schemes are treated as case-sensitive).
- Fixed bug #80972 (Memory exhaustion on invalid string offset).
FPM
- Fixed bug #65800 (Events port mechanism).
FTP
GD
- Fixed bug #81032 (GD install is affected by external libgd installation).
MBString
- Fixed bug #81011 (
mb_convert_encoding
removes references from arrays).
ODBC
- Fixed bug #80460 (ODBC doesn't account for SQL_NO_TOTAL indicator).
PDO_MySQL
- Fixed bug #81037 (PDO discards error message text from prepared statement).
PDO_ODBC
- Fixed bug #44643 (bound parameters ignore explicit type definitions).
pgsql
- Fixed
php_pgsql_fd_cast()
wrt.php_stream_can_cast()
.
SPL
- Fixed bug #80933 (
SplFileObject::DROP_NEW_LINE
is broken for NUL and CR).
Opcache
- Fixed bug #80900 (switch statement behavior inside function).
- Fixed bug #81015 (Opcache optimization assumes wrong part of ternary operator in if-condition).
XMLReader
- Fixed bug #73246 (XMLReader: encoding length not checked).
Zip
- Fixed bug #80863 (
ZipArchive::extractTo()
ignores references).
Commit List
Christoph M. Becker
- Fix #80933:
SplFileObject::DROP_NEW_LINE
is broken for NUL and CR in 976e71a2fa - Update
php_version.h
in 0071c7ed7e - Fix #80960:
opendir()
warning wrong info when failed on Windows in ea3c992bff - Fix misleading error message in 263f14ac60
- Fix
php_pgsql_fd_cast()
wrt.php_stream_can_cast()
in 1fcea24efb - Fix #67792: HTTP Authorization schemes are treated as case-sensitive in 39ddf6b89c
- Export
gzfwrite()
in a2771296c0 - Fix typo in NEWS in 7f9183ce20
- Fix #80901: Info leak in ftp extension in c0ae3a7fb7
- Fix #80852: Stack-overflow when
json_encode()
'ing SimpleXMLElement in 9f7e8b777c - Fix #80710:
imap_mail_compose()
header injection in 37962c61d2 - Add missing NEWS entry for #80710 in 60a68a45c3
- Fix ./makedist wrt. to GH move in 096f148c61
- 7.3.29 is next in 98c8ad9218
- Fix #80460: ODBC doesn't account for SQL_NO_TOTAL indicator in 7f83976200
- Fix #73246: XMLReader: encoding length not checked in 272df442f5
- Fix #79100: Wrong FTP error messages in 42c72ef463
- Fix #81011:
mb_convert_encoding
removes references from arrays in 0cafd53d18 - Update version in
php_version.h
as well in 125fc0b8d4 - Add simple Firebird payload fake server to test suite in f95f8a3c1e
- Fix #80863:
ZipArchive::extractTo()
ignores references in 57918b1a1b - Fix #44643: bound parameters ignore explicit type definitions in 23a3bbb468
- Disable LSan for all PDO_Firebird tests in f6c15e2caf
- Properly push test artifacts in fb86a176ba
David Carlier
- Fix return type of sparc atomic helper in 5ccb5fd91e
David Rans
- PHPDBG: fix bug parsing 3-word opcodes in 054fad6d63
Derick Rethans
- Prepare for 7.4.19 in 8e48895f48
- Put back inadvertedly removed NEWS entries in f99926f554
- Reset PHP-7.4 for 7.4.20 in 0328ff49cc
- Prep for 7.4.20 in edfc1de7df
- Update versions for PHP 7.4.20 in 032d23a94f
Flavio Heleno
- Fix #81032: GD install is affected by external libgd installation in 28e7addb9d
George Peter Banyard
- Fix Bug #80972: Memory exhaustion on invalid string offset in 97f8ca52fa
Joe Watkins
- Fixed bug #65800 php-fpm: fix Solaris port events.mechanism in 2558acbd66
- missing ; in ef3e0ee08a
Kamil Tekiela
- Fixed bug #81037 PDO discards error message text from prepared statement in 6afbb74194
- Fix NEWS in ead72aabfb
Matteo Beccati
- Revert "Fix #80892:
PDO::PARAM_INT
is treated the same asPDO::PARAM_STR
" in b8e49fe872
Nikita Popov
- Fix build warning in 310c0561a9
- Remove incorrect format argument in 3f71ba2611
getdate()
may returnarray_key_long
in c7387ab92fpassword_get_info()
may returnarray_of_null
in c340f97ab0- fetch_assoc may return
array_key_long
in 67c4d1f5b9 filter_var_array()
may returnarray_of_ref
in 5acab7ebb4- Add CONFLICTS file for PDO firebird tests in 896e4d3428
- Fixed bug #81015 in 178bbe3478
- Fix azure build in 8deadfa31b
Petr Sumbera
- php-fpm: fix Solaris port events.mechanism in 04078a597c
Stanislav Malyshev
- Revert "Fix #80852: Stack-overflow when
json_encode()
'ing SimpleXMLElement" in 1b88c85cd8
twosee
- Fixed bug #80900 in 7c6cf09463
- Fixed bug #80929 in c0b1bdcdc3