PHP 8.0 is no longer officially supported by the PHP project.
Official support refers to that provided direct by the PHP Project.
If you install PHP via third-party packages, support timelines may be different.
Please read the Release Support Policy for more information.
The latest release of PHP 8.0 is
8.0.30 which includes important security patches.
Source Code
-
PHP 8.0.0 (tar.gz)
- sha256: 3ed7b48d64357d3e8fa9e828dbe7416228f84105b8290c2f9779cd66be31ea71
-
PHP 8.0.0 (tar.bz2)
- sha256: 5e832dc37eabf444410b4ea6fb3d66b72e44e7407a3b49caa5746edcf71b9d09
-
PHP 8.0.0 (tar.xz)
- sha256: b5278b3eef584f0c075d15666da4e952fa3859ee509d6b0cc2ed13df13f65ebb
Change Log
-
bz2
-
Fixed bug
#71263 (fread() does not report bzip2.decompress errors).
-
cli
-
com
-
Fixed bug
#55847 (DOTNET .NET 4.0 GAC new location).
-
Fixed bug
#62474 (com_event_sink crashes on certain arguments).
-
calendar
-
Fixed bug
#80007 (Potential type confusion in unixtojd() parameter parsing).
-
core
-
Fixed bug
#36365 (scandir duplicates file name at every 65535th file).
-
Fixed bug
#49555 (Fatal error "Function must be a string" message should be renamed).
-
Fixed bug
#62294 (register_shutdown_function() does not correctly handle exit code).
-
Fixed bug
#62609 (Allow implementing Traversable on abstract classes).
-
Fixed bug
#65274 (Enhance undefined class constant error with class name).
-
Fixed bug
#65275 (Calling exit() in a shutdown function does not change the exit value in CLI).
-
Fixed bug
#69084 (Unclear error message when not implementing a renamed abstract trait function).
-
Fixed bug
#70839 (Converting optional argument to variadic forbidden by LSP checks).
-
Fixed bug
#74558 (Can't rebind closure returned by Closure::fromCallable()).
-
Fixed bug
#77561 (Shebang line not stripped for non-primary script).
-
Fixed bug
#77619 (Wrong reflection on MultipleIterator::__construct).
-
Fixed bug
#77966 (Cannot alias a method named "namespace").
-
Fixed bug
#78236 (convert error on receiving variables when duplicate [).
-
Fixed bug
#78770 (Incorrect callability check inside internal methods).
-
Fixed bug
#79108 (Referencing argument in a function makes it a reference in the stack trace).
-
Fixed bug
#79368 ("Unexpected end of file" is not an acceptable error message).
-
Fixed bug
#79462 (method_exists and property_exists incoherent behavior).
-
Fixed bug
#79467 (data:// wrappers are writable).
-
Fixed bug
#79521 (Check __set_state structure).
-
Fixed bug
#79790 ("Illegal offset type" exception during AST evaluation not handled properly).
-
Fixed bug
#79791 (Assertion failure when unsetting variable during binary op).
-
Fixed bug
#79828 (Segfault when trying to access non-existing variable).
-
Fixed bug
#79841 (Syntax error in configure / unescaped "[]" in php.m4).
-
Fixed bug
#79852 (count(DOMNodeList) doesn't match count(IteratorIterator(DOMNodeList))).
-
Fixed bug
#79867 (Promoted untyped properties should get null default value).
-
Fixed bug
#79897 (Promoted constructor params with attribs cause crash).
-
Fixed bug
#79927 (Generator doesn't throw exception after multiple yield from iterable).
-
Fixed bug
#79946 (Build fails due to undeclared UINT32_C).
-
Fixed bug
#79948 (Exit in auto-prepended file does not abort PHP execution).
-
Fixed bug
#80045 (memleak after two set_exception_handler calls with __call).
-
Fixed bug
#80096 (Segmentation fault with named arguments in nested call).
-
Fixed bug
#80109 (Cannot skip arguments when extended debug is enabled).
-
Fixed bug
#80225 (broken namespace usage in eval code).
-
Fixed bug
#80258 (Windows Deduplication Enabled, randon permission errors).
-
Fixed bug
#80280 (ADD_EXTENSION_DEP() fails for ext/standard and ext/date).
-
Fixed bug
#80334 (assert() vs named parameters - confusing error).
-
Fixed bug
#80055 (Abstract trait methods returning "self" cannot be fulfilled by traits).
-
Fixed faulty generator cleanup with yield from.
-
Implement #[Attr] Attribute syntax as per final vote in RFC https://wiki.php.net/rfc/shorter_attribute_syntax_change
-
Implemented FR
#47074 (phpinfo() reports "On" as 1 for the some extensions).
-
Implemented FR
#72089 (require() throws fatal error instead of exception).
-
Removed the pdo_odbc.db2_instance_name php.ini directive.
-
Use SSE2 instructions do locale independent strtolower.
-
curl
-
dom
-
date
-
Fixed bug
#60302 (DateTime::createFromFormat should new static(), not new self()).
-
Fixed bug
#65547 (Default value for sunrise/sunset zenith still wrong).
-
Fixed bug
#69044 (discrepancy between time and microtime).
-
Fixed bug
#80057 (DateTimeImmutable::createFromFormat() does not populate time).
-
Implemented FR
#79903 (datetime: new format "p", same as "P" but returning "Z" for UTC).
-
enchant
-
Add LIBENCHANT_VERSION macro.
-
Add enchant_dict_add and enchant_dict_is_added functions.
-
Deprecate enchant_broker_set_dict_path, enchant_broker_get_dict_path, enchant_dict_add_to_personal and enchant_dict_is_in_session.
-
Use libenchant-2 when available.
-
ffi
-
fpm
-
fileinfo
-
gd
-
Added imagegetinterpolation().
-
Fixed bug
#55005 (imagepolygon num_points requirement).
-
Made the $num_points parameter of php_imagepolygon optional.
-
Removed deprecated image2wbmp().
-
Removed deprecated png2wbmp() and jpeg2wbmp().
-
Replaced gd resources with objects.
-
imap
-
iconv
-
intl
-
jit
-
Fixed bug
#77857 (Wrong result if executed with JIT).
-
Fixed bug
#79255 (PHP cannot be compiled with enable JIT).
-
Fixed bug
#79582 (Crash seen when opcache.jit=1235 and opcache.jit_debug=2).
-
Fixed bug
#79743 (Fatal error when assigning to array property with JIT enabled).
-
Fixed bug
#79864 (JIT segfault in Symfony OptionsResolver).
-
Fixed bug
#79888 (Incorrect execution with JIT enabled).
-
json
-
ldap
-
mbstring
-
mysqli
-
Fixed bug
#76809 (SSL settings aren't respected when persistent connections are used).
-
mysqlnd
-
oci8
-
Deprecated old OCI8 function aliases.
-
Modernized oci_register_taf_callback() callable argument parsing implementation.
-
Removed obsolete no-op function oci_internal_debug().
-
odbc
-
Fixed bug
#22986 (odbc_connect() may reuse persistent connection).
-
Fixed bug
#44618 (Fetching may rely on uninitialized data).
-
opcache
-
openssl
-
pcre
-
pdo
-
pdo_firebird
-
Fixed bug
#64937 (Firebird PDO preprocessing sql).
-
pdo_oci
-
pdo_pgsql
-
pgsql
-
phpdbg
-
Fixed bug
#76596 (phpdbg support for display_errors=stderr).
-
Fixed bug
#76801 (too many open files).
-
Fixed bug
#77800 (phpdbg segfaults on listing some conditional breakpoints).
-
Fixed bug
#77805 (phpdbg build fails when readline is shared).
-
reflection
-
Fixed bug
#64592 (ReflectionClass::getMethods() returns methods out of scope).
-
Fixed bug
#69180 (Reflection does not honor trait conflict resolution / method aliasing).
-
Fixed bug
#74939 (Nested traits' aliased methods are lowercased).
-
Fixed bug
#77325 (ReflectionClassConstant::$class returns wrong class when extending).
-
Fixed bug
#78697 (ReflectionClass::implementsInterface - inaccurate error message with traits).
-
Fixed bug
#80190 (ReflectionMethod::getReturnType() does not handle static as part of union type).
-
Fixed bug
#80299 (ReflectionFunction->invokeArgs confused in arguments).
-
Fixed bug
#80370 (getAttributes segfault on dynamic properties).
-
Implement #79628 (Add $filter parameter for ReflectionClass::getConstants and ReflectionClass::getReflectionConstants) (carusogabriel)
-
Implement ReflectionProperty::hasDefaultValue and Reflection::getDefaultValue (beberlei)
-
snmp
-
Fixed bug
#70461 (disable md5 code when it is not supported in net-snmp).
-
spl
-
sqlite3
-
session
-
Fixed bug
#73529 (session_decode() silently fails on wrong input).
-
Fixed bug
#78624 (session_gc return value for user defined session handlers).
-
shmop
-
simplexml
-
Fixed bug
#63575 (Root elements are not properly cloned).
-
Fixed bug
#75245 (Don't set content of elements with only whitespaces).
-
sodium
-
Fixed bug
#77646 (sign_detached() strings not terminated).
-
standard
-
Don't force rebuild of symbol table, when populating $http_response_header variable by the HTTP stream wrapper.
-
Fixed bug
#47983 (mixed LF and CRLF line endings in mail()).
-
Fixed bug
#64060 (lstat_stat_variation7.phpt fails on certain file systems).
-
Fixed bug
#75902 (str_replace should warn when misused with nested arrays).
-
Fixed bug
#76859 (stream_get_line skips data if used with data-generating filter).
-
Fixed bug
#77204 (getimagesize(): Read error! should mention file path).
-
Fixed bug
#78385 (parse_url() does not include 'query' when question mark is the last char).
-
Fixed bug
#79868 (Sorting with array_unique gives unwanted result).
-
Fixed bug
#80256 (file_get_contents strip first line with chunked encoding redirect).
-
Fixed bug
#80266 (parse_url silently drops port number 0).
-
Fixed bug
#80290 (Double free when ASSERT_CALLBACK is used with a dynamic message).
-
Implemented FR
#78638 (__PHP_Incomplete_Class should be final).
-
Made quoting of cmd execution functions consistent.
-
tidy
-
tokenizer
-
Fixed bug
#80328 (PhpToken::getAll() confusing name).
-
xml
-
Fixed bug
#76874 (xml_parser_free() should never leak memory).
-
xmlwriter
-
zip
-
Add "flags" options to ZipArchive::addGlob and addPattern methods keeping previous behavior having FL_OVERWRITE by default.
-
Add ZipArchive::EM_UNKNOWN and ZipArchive::EM_TRAD_PKWARE constants.
-
Add ZipArchive::isCompressionMethodSupported() and ZipArchive::isEncryptionMethodSupported() method (libzip 1.7.0).
-
Add ZipArchive::replaceFile() method.
-
Add ZipArchive::setCancelCallback method (since libzip 1.6.0).
-
Add ZipArchive::setMtimeName and ZipArchive::setMtimeIndex methods.
-
Add ZipArchive::setProgressCallback method (since libzip 1.3.0).
-
Add lastId property to ZipArchive.
-
Add optional "flags" parameter to ZipArchive::addEmptyDir, addFile and addFromString methods.
-
Fixed bug
#50678 (files extracted by ZipArchive class lost their original modified time).
-
Fixed bug
#72374 (remove_path strips first char of filename).
-
Implemented FR
#77960 (add compression / encryption options for ZipArchive::addGlob and ZipArchive::addPattern).
-
ZipArchive::status and ZipArchive::statusSys properties and ZipArchive::getStatusString() method stay valid after the archive is closed.
-
zlib
-
Fixed bug
#71417 (fread() does not report zlib.inflate errors).
-
Fixed bug
#78792 (zlib.output_compression disabled by Content-Type: image/).