PHP 8.0.0alpha2: Downloads, Changelog, News

Release Information

PHP Version
PHP 8.0
Release Date
Release Type
Bug Fix Release
Release Status
EOL, Use PHP 8.0.30
Branch Status

PHP 8.0 reached EOL on , and all releases of this version no longer receive security or bug fixes. Using PHP 8.0.0alpha2 is not recommended. PHP 8.0.30 is the latest version in the series.


Source Code

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

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

Debian-based ZTS Apache: Includes Apache web server integrating PHP as an Apache module.
docker pull php:8.0.0alpha2-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.0alpha2-fpm

Commit List

Alex Dowad

  • Increase failure threshold for 'extensive backtracking' fileinfo test in d1ebc3ab21
  • Fix typos in test cases for crypt_sha{256,512} in e94afec700
  • Clean house in cryptographic hashing code in 19d3e29bf5
  • Update UPGRADING.INTERNALS re: removed --disable-inline-optimization switch in 7b4179e8da
  • Correct comment in plain_wrapper.c (refers to microseconds, not milliseconds) in e673c63989
  • Fix {{{ comment to match function name for php_replace_controlchars_ex in c4f716a20d
  • Remove useless prototype for spl_heap_get_iterator in 47fae8425f

Christoph M. Becker

  • Fix #79487: ::getStaticProperties() ignores property modifications in a895bb6885
  • Revert "Fix #79487: ::getStaticProperties() ignores property modifications" in f3cccfde9e
  • Fix #79487: ::getStaticProperties() ignores property modifications in ef2130db88
  • Mark phpdbg test as XFAIL on Windows with JIT enabled in 26badd58b5
  • Fix #69804: ::getStaticPropertyValue() throws on protected props in 26aefb750a
  • Fix potential environment variable deadlock in 32257ac17f
  • Properly initialize displaysize in 38177dcb42
  • Convert shmop resources to opaque objects in 18f58080dc
  • Fix #79749: Converting FFI instances to bool fails in aca621cf92
  • Fix #79756: finfo_file crash (FILEINFO_MIME) in 816b4c1235
  • Fix #63208: BSTR to PHP string conversion not binary safe in a385cfa7ad
  • Fix macro redifinition warnings in debug builds in 07ff243f07
  • Fix #70362: Can't copy() large 'data://' with open_basedir in 7f3bc64287
  • Improve "VirtualProtect() failed" error messages in 815a2be2ed
  • Update to PCRE2 10.35 in b419f96c62
  • Replace ISO_8859- with ISO8859- aliases for MBString in 3516a9c8f0
  • Document zend_hash_sort and zend_ts_hash_sort signature change in 942f341b4e
  • Update to PCRE2 10.35 in 8c67c16699
  • Extract test helper function for SeCreateSymbolicLinkPrivilege check in c49fb83c38
  • Update php_version.h in 2ecb4680ad
  • Enable most lstatstat* tests on Windows in 1973ca21bd
  • Enable readlinkrealpath* tests on Windows in 6f0b73345a
  • Skip test if SeCreateSymbolicLinkPrivilege is not given in 1b961c0c42
  • Fix tests for x86 Windows in a58d865f65
  • Fix sapi_windows_vt100_support() arginfo in fecea7b89c
  • define build system and provider on Windows in 6cef9331fd


  • Use correct ZPP mechanism in get_class_methods() in 5ea28fe6c4

David Carlier

  • Haiku proc_open build fix, *pty api resides on the BSD library in 1cbb62e82d

Dmitry Stogov

Eddie Kohler

  • SHA-3 Keccak_Hash: Store Keccak_HashInstance in the main context in 1e9ff7e757
  • Move alignof support check into main in ff69a8a789
  • Mark Keccak functions that contain expected misaligned accesses in dc85be5456
  • Make HashContexts serializable in ada776c84c
  • Add unserializehash fuzzer in 75ada661b9

Fabien Villepinte

Gabriel Caruso

  • Update versions for PHP 8.0.0alpha2 in 2b6c80f22b

George Peter Banyard

  • Use standard bool type in EXIF extension in 6079bdb287
  • Drop non-well formed numeric strings in strings function tests in 76643cd4f3
  • Drop non-well formed numeric strings in array function tests in a9625f8b35
  • Drop non-well numeric string in Intl test in 892b32d839
  • Drop non-well formed numeric strings from math function tests in 562ceae7bc
  • Refactor levenshtein() in c4a0ba8d6e


Jens de Nies

Martin Schröder

Max Semenik

  • Remove requirements for proto comments from CODING_STANDARDS in 4757998650
  • Remove proto comments from C files in 2b5de6f839


Máté Kocsis

  • Remove outdated PHPDoc from ext/enchant's stub in ba434fb5a6
  • Add ZEND_ACC_NO_DYNAMIC_PROPERTIES flag to SysvMessageQueue in 16fe64d3ed
  • Remove unnecessary PHPDoc-alike blocks from tests in b5c7a83dca
  • Add the ZEND_ACC_NO_DYNAMIC_PROPERTIES flag to Shmop in bcb9658b87
  • Add ZPP macros for class name or object parameters in e93d20ad7e
  • Update outdated arginfo hashes in 30067894fc
  • Add support for forcing regeneration of arginfo files in d8dfb21b51
  • Add string or object ZPP macros in b18b2c8fe5
  • Fix a few comments in 91fbd12d57

Nikita Popov

Paweł Tomulik

  • Promote warning to exception in ldap_set_rebind_proc() in b3698ed9eb
  • Add ldap_count_references() in 915abeb699

Remi Collet

  • ensure all files have same date in official archives in 5c37715dfd
  • display info about system used to build and its provider in ad0d2e438f


  • [skip-ci] Add README for ext/mysqli tests in 48eb635a0f

Xinchen Hui

  • Fixed bug #79743 (Fatal error when assigning to array property with JIT enabled) in d005a8e92b
  • Move to alpha2 section in c3af355755
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.