PHP 8.0 reached EOL on , and all releases of this version no longer receive security or bug fixes. Using PHP 8.0.13 is not recommended. PHP 8.0.30 is the latest version in the series.
Downloads
Source Code
Git Clone
Use Git to clone the 8.0.13 tag from the PHP Git repository.
git clone https://github.com/php/php-src.git --depth 1 --branch php-8.0.13
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-8.0.13-x64NTS.zip (25.41 MiB)
php-8.0.13-x86NTS.zip (23.57 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-8.0.13-x64TS.zip (25.52 MiB)
php-8.0.13-x86TS.zip (23.55 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:8.0.13-cli-alpine
Debian-based: More compatible with other components, complete, and are widely used.
docker pull php:8.0.13-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:8.0.13-fpm-alpine
Debian-based ZTS Apache: Includes Apache web server integrating PHP as an Apache module.
docker pull php:8.0.13-apache
Debian-based NTS FPM: PHP-FPM, can be integrated with Nginx, Caddy, and other web servers over Fast CGI.
docker pull php:8.0.13-fpm
ChangeLog
Core
- Fixed bug #81518 (Header injection via default_mimetype / default_charset).
Date
- Fixed bug #81500 (Interval serialization regression since 7.3.14 / 7.4.2).
DBA
- Fixed bug #81588 (TokyoCabinet driver leaks memory).
MBString
- Fixed bug #76167 (mbstring may use pointer from some previous request).
Opcache
- Fixed bug #81512 (Unexpected behavior with arrays and JIT).
- Fixed bug #81652 (The value of
error_reporting()
gets overridden).
PCRE
- Fixed bug #81424 (PCRE2 10.35 JIT performance regression).
XML
- Fixed bug #79971 (special character is breaking the path in xml function). (CVE-2021-21707)
XMLReader
- Fixed bug #81521 (
XMLReader::getParserProperty
may throw with a valid property).
Commit List
Ben Ramsey
- Change UBool to bool for equality operators in ICU >= 70.1 in 81b3f95622
- Accommodate changes to canonicalized forms in ICU >= 70.1 in 52cda6fc43
- CLDR 40a0 uses a lowercase "temp" instead of "Temp" in ICU >= 70.1 in c7a2441e93
Bob Weinand
- Add
ZEND_API
for weakmap functionality viazend_weakrefs_hash_add
/del in 471102edcd - Fix weakmap API test in 345f46ff29
Christopher Jones
- Fix tests for method camel case change in 51f1cacf7a
- Fix tests for method camel case change in 3e9b53f2ec
Christoph M. Becker
- Fix #81424: PCRE2 10.35 JIT performance regression in 788a701e22
- Fix #81518: Header injection via default_mimetype / default_charset in 365769366b
- Fix #81500: Interval serialization regression since 7.3.14 / 7.4.2 in 866adb122a
- Fix #76167: mbstring may use pointer from some previous request in d3d6d7906e
- Fix #79971: special character is breaking the path in xml function in 763156f0c2
Derick Rethans
- Bump config.guess/config.sub in all supported branches to support Apple Silicon in cd0c32e7fb
- Bump config.guess/config.sub in all supported branches to support Apple Silicon in 89dfe49321
- Updated to version 2021.3 (2021c) in e81554c6e6
- Empty merge in 760475b43a
- Updated to version 2021.3 (2021c) in 8a61f1ece6
- Empty merge in 2d44367b3f
- Updated to version 2021.3 (2021c) in c55b41d658
- Revert "Updated to version 2021.3 (2021c)" in 32c0850b4a
- Remove now superfluous tests due to changes in tzdata in 9733d49e14
Dmitry Stogov
- JIT: Fixed NaN handling in 8a0873020a
- JIT: Fixed incorrect code generation for JMPZ in cd45bd0a81
- JIT: Fixed incorrect reference handling in PRE_INC/DEC_OBJ in 6ab36fb6f9
- JIT: Fixed wrong comparison skip in a743fd7633
- Fixed bug #81512 (Unexpected behavior with arrays and JIT) in b47a48ff80
- JIT: Fixed FETCH_LIST_R on string in 7cea20f937
- Flush error messages emitted during preloading in 45b127ad4a
- JIT: Fixed extension handling in b279de416e
- JIT: Fixed incorrect double/long register hinting in bbd875268a
- Fixed type inference (ASSIGN_OP with typed reference may cause type conversion) in ed8ec9d71e
- JIT: Fixed usage of incorrect specialized zval destructor in ccdda69a18
- Fixed type inference for COPY_TMP in a4c41d45cd
- Tracinf JIT: Prevnt generation code for instruction that with cyclic dependency in 6021e72143
- Tracing JIT: Fixed ADD with two references to arrays in 13d1244575
- JIT: Fixed DASM_S_RANGE_VREG error in e59d0a7151
- Tracing JIT: Fixed memory leak in d3063c02c6
- Fixed incorrect optimization that may cause JIT assertion in 6bd5271c62
- JIT: Fixed memory leak in 38626dbaad
- JIT: Fixed megamorphic call detection in 95c0dfc57f
- Use right frame in b69c6ba9df
- Tracing JIT: Fixed incorrect assumtion about temporary variable types clobbered by *_ROPE instructions in c7e974fc4e
- Tracing JIT: Fixed incorrect assumption about in-memeory zval type in d3251632ad
- Tracing JIT: Fixed possible endless loop when escape from
ZEND_CALL_TOP
frame in 29c8c1e955 - JIT: Fixed register allocation in case of integer overflow in cd32b47235
- JIT: Fixed numeric string index handling in f1e6a7d83d
- Fixed incorrect assumption about reference counting in 5c43e0c0ee
- Tracing JIT: Fixed reference counting when escape because of IS_UNDEF element in d7ac39b02d
- Tracing JIT: Fixed reference counting when escape because of IS_UNDEF element (test) in 2605911272
Jakub Zelenka
- Fix bug #81026 (PHP-FPM oob R/W in root process leading to priv escalation) in cb2021e5f6
- Fix bug #81026 (PHP-FPM oob R/W in root process leading to priv escalation) in fadb1f8c1d
- Fix bug #81026 (PHP-FPM oob R/W in root process leading to priv escalation) in f47798e685
Kamil Tekiela
- Fix bug GH-1 (mysqli_sql_exception->sqlstate is inaccessible) in 64fca5c5f0
- Revert "Fix bug GH-1 (mysqli_sql_exception->sqlstate is inaccessible)" in c9d509b668
Máté Kocsis
- Fix the return type of
imagecolorexactalpha()
in 17fa9b77bd - String default values are enclosed in quotes rather than apostrophes in 2127b49c65
- Fix 2nd param name of
pg_send_execute()
in ca219d7d27
Nikita Popov
- Fixed bug #54350 in 1519770288
- Set opline before calling undef op helper in 455837139e
- Handle undefined dim in assign_dim_helper in 08c29a657d
- Check exception after undef var notice in b564113756
- Fix failing PDO PgSQL test in c0cbf3a6eb
- Fixed bug #81494 in fcabe693ba
- Don't free FETCH_W operand if GLOBAL_LOCK in a2e3ca1f5b
- Don't replace tmp with cv in YIELD argument in 9ebe8494b8
- Fix bug #81521 in 53f89219ab
- Increase timeout on community job in 6e9b764920
- Fix bug #81510 in 6974372fbb
- Remove
bug76738.phpt
in decf906a90 - Fix finally exception chaining on recursion in 1a2fb90bf4
- Fix range inference hang in f8ec5a1d4c
- Handle FETCH_DIM_R after FETCH_DIM_FUNC_ARG in inference in 2e29817005
Remi Collet
- bump zip ext version in 6d0d5227d8
- remove closing bracket in bad place in 9f98bc58c7
- fix for pcre2 10.38 in 56495ac031
- fix for pcre2 10.38 in a6f5c2dc8b
Sara Golemon
- Update versions for PHP 8.0.13 in 4850f51d29
Stanislav Malyshev
- Add FPM fix news in 6ab9b3865a