PHP 8.0 reached EOL on , and all releases of this version no longer receive security or bug fixes. Using PHP 8.0.14 is not recommended. PHP 8.0.30 is the latest version in the series.
Downloads
Source Code
git clone https://github.com/php/php-src.git --depth 1 --branch php-8.0.14
./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:8.0.14-cli-alpine
docker pull php:8.0.14-cli
docker pull php:8.0.14-fpm-alpine
docker pull php:8.0.14-apache
docker pull php:8.0.14-fpm
ChangeLog
Core
- Fixed bug #81582 (Stringable not implicitly declared if __toString() came from a trait).
- Fixed bug #81591 (Fatal Error not properly logged in particular cases).
- Fixed bug #81626 (Error on use static:: in __сallStatic() wrapped to
Closure::fromCallable()
). - Fixed bug #81631 (::class with dynamic class name may yield wrong line number).
FPM
- Fixed bug #81513 (Future possibility for heap overflow in FPM zlog).
GD
- Fixed bug #71316 (libpng warning from imagecreatefromstring).
IMAP
- Fixed bug #81649 (imap_(un)delete accept sequences, not single numbers).
OpenSSL
- Fixed bug #75725 (./configure: detecting RAND_egd).
PCRE
- Fixed bug #74604 (Out of bounds in
php_pcre_replace_impl
).
SPL
- Fixed bug #81587 (MultipleIterator Segmentation fault w/ SimpleXMLElement attached).
Standard
Commit List
Christoph M. Becker
- Fix #71316: libpng warning from imagecreatefromstring in 1919c4b44d
- Fix #79971: special character is breaking the path in xml function in f15f8fc573
- 7.3.34 might be next in 7d92153182
- "Export" relevant GD macros in 9237055141
- Fix #81649: imap_(un)delete accept sequences, not single numbers in 179030d167
- Fix #81659:
stream_get_contents()
may unnecessarily overallocate in 31749aac62 - Fix #74604: Out of bounds in
php_pcre_replace_impl
in 712fc54e85
David Carlier
- Fix leaks for AppArmor based distros in case the profile creation fails in b1e6fdefd4
- OpenBSD ZTS build fix in fb3e646f6b
Derick Rethans
- Prepare for 7.4.27 in 05b212bb3d
- Updated to version 2021.5 (2021e) in a93ff1df20
- Empty merge in 5715a5e570
- Updated to version 2021.5 (2021e) in 7c9c722b53
- Empty merge in b085f79cce
- Updated to version 2021.5 (2021e) in 4ec9d07cc3
- Revert "Updated to version 2021.5 (2021e)" in 88f99c9c1d
- Prepare for 7.4.28 in f533744c92
Dmitry Stogov
- Fixed type inference for FETCH_DIM_W without use in 66d93c63ff
- Tracing JIT: Fixed incorrect guard elimination in 34d22acc7e
- JIT: Fixed incorrect guard elimination in 7bf63243e1
- Don't call
_zend_hash_index_find()
for packed arrays in e868ded6ef - JIT: Fixed incorrect guard elimination in 8fe808207f
- Fixed incorrect reference counter inference in 535a0553e8
- Tracing JIT: Fixed incorrect tracing type inference in 203c1b807e
- JIT: Fixed memory leak in 45683703f1
- Tracing JIT: Fixed incorrect assumption about in-memeory zval type in 3dba5566ce
- Tracing JIT: Fixed register allocation in 3081423706
- JIT: Fixed incorrect MOD into BW_AND optimization in 64915775a7
- Partially fix handling of exceptions thrown in interrupt handlers in fa0b84a06b
- JIT: Partially fix handling of exceptions thrown in interrupt handlers in 5380b415a2
- Fixed incorrect guard elimination in 12d02e6227
- Fixed test in 64fde17042
- JIT: Fixed reference-counting inference in 292d76d8a4
- Tracing JIT: Fixed failure on non-optimized op_arrays (op_array->T may be above ssa->vars_count) in 85066fd88e
- Tracing JIT: Fixed abstract stack consistency for [QM_]ASSIGN of CV to itself in fc35a6b93c
- JIT: Fixed memory lieak in 48a65fef6f
- JIT: Fixed memory leak in fac78ee760
- JIT: Fixed memory leak in Zend/tests/concat_002.phpt introduced by fac78ee7 in 9dd3e8be8a
- Fixed incorrect DCE for ADD_ARRAY_ELEMENT instruction in f302430c72
- Fixed incorrect refcountion inference for BW_NOT in 3c53a9fd73
- Fixed incorrect narrowing to double in f9518c3850
- JIT: Fixed use-after-free caused by shift by negative number in 49f44e7ffc
- Disable type narrowing optimization when we contruct SSA for JIT in 297117bbc5
- JIT: Fix named arguments handling in 8f4cfe04eb
- JIT: Fix named arguments handling in d955415114
- JIT: Fix exception handling when next array element is already occupied in aff115547f
- Fixed type inference (it's safe to ignore reference counting narrowing) in 86430e8e01
- JIT: Fix uninitialized result of ASSIGN_DIM[_OP] after clobbering array by user error handler in 6e1fe96962
- JIT: Fix incorrect reference counting inference in c1036194d6
- Fix crash after indirect modification of string by user error handler in df434f056f
- JIT: Fix incorrect code produced for BOOL_NOT and [double, undef] operand in e7b31f57ec
- Use proper functions in 9f6ab78610
- Fix clobering of operand by error handler in assignment to string offset in 09547c64c2
- Fix clobering of operand by error handler in assignment to string offset (optimization and JIT support) in 4595a57e99
George Peter Banyard
- Fix Bug #81588 TokyoCabinet driver leaks memory in 96dd310c54
Jakub Zelenka
- Fix bug #81513 (Future possibility for heap overflow in FPM zlog) in b2cf9b7ec7
- Increase script sleep in FPM process idle test in fc67967190
- Increase read timeout in FPM process idle test in 2f8407f185
- Add skip for FPM process idle flaky test in 81513e6285
Matt
- Fix bug #81618: Correct dns_get_record on FreeBSD in 45f52285f6
Nikita Popov
- Fix WeakReference uniquing is TAG_HT is used in 546e55864d
- Fixed bug #81587 in 4b9fbc6627
- Fixed bug #81582 in d3932682e7
- Suppress unused label warnings in SWITCH VM in ee37774466
- Fix typo in 462271c7e0
- Fix bug #81591: ignore_repeated_errors broken in 4c171ed5eb
- Remove unnecessary assertion in 7e67366a9b
- Don't implement Stringable on traits in d478ae73b1
- Implement Stringable automatically for internal classes in b302bfabe7
- Fix stubs for bzerr* functions in 9b2a3c1c4f
- Drop pi nodes for both old/new pred in replace_predecessor in 53df29bc29
- Add string return type to __toString() of internal classes in a551b08307
- Fix COPY_TMP live range construction with optimization in 8c4a7f20f5
- Safely reassign array in
usort()
in 6f38acfaf9 - Safely reassign array in
usort()
in 18a0d46a1b - Fixed bug #81626 in d26965b247
- Fixed bug #81631 in 4d4fe7639f
- Clarify that
preg_match_all()
cannot return null in bc6ec0a109 - Update reflection test after stub change in e81ad637f4
- Fix bug #81652 in be271f277e
- Disable enchant on azure i386 in c2d6d837ca
Petar Obradović
- Fix invalid mbstring config reference in 87069d3dcc
Remi Collet
- fix gdImagePngCtxEx call with system libgd in e713890d36
- add missing cond in f6621037a0
Sara Golemon
- Prep for 8.0.14 in 2d4bfcfd3b
- 8.0.14 GA in d5e9b06077
- Update versions for PHP 8.0.14 in 9b4a6e9b1b
Tyson Andre
- Fix use after free when WeakMap is modified during field write in 241bd3f454
Дилян Палаузов
- Fix #75725: ./configure: detecting RAND_egd in 60fe575ce3