New Features
PHP Core
SensitiveParameter Attribute
Added the #[\SensitiveParameter] attribute to redact
sensitive data in backtraces.
error_log_mode INI directive
The error_log_mode INI directive has been added which allows setting
the permissions for the error log file.
Enumerations properties in constant expressions
It is now possible to fetch properties of
Enumerations
in constant expressions.
Type System Improvements
It is now possible to use null and false
as stand-alone types.
The true type has been added.
It is now possible to combine intersection and union types.
The type needs to be written in DNF.
Constants in Traits
It is now possible to define constants in traits.
OCI8
Added the oci8.prefetch_lob_size INI directive and
oci_set_prefetch_lob() function to tune LOB query
performance by reducing the number of round-trips between PHP and
Oracle Databases when fetching LOBS.
This is usable with Oracle Database 12.2 or later.
OpenSSL
Added AEAD support for the chacha20-poly1305 algorithm.
PCRE
Added support for the n (NO_AUTO_CAPTURE) modifier,
which makes simple (xyz) groups non-capturing.
Only named groups like (?<name>xyz) are capturing.
This only affects which groups are capturing, it is still possible to use
numbered subpattern references, and the matches array will still contain
numbered results.
Random
This is a new extension which organises and consolidates existing
implementations related to random number generators.
New and better RNGs are available with scope issues eliminated.