int，float 或 resource
$null["key"]）将会抛出 notice 通知。
标签（不包含空行）将会被解释成一个 PHP 头标签。Previously it was interpreted
either as a short opening tag followed by literal
resulted in a syntax error (with
or was interpreted as a literal
When using include/require on a stream,
will be invoked with the
Custom stream wrapper implementations may need to implement the
streamWrapper::stream_set_option() method to
avoid a warning (always returning
false is a sufficient implementation).
o 被移除。因为它不是由 PHP
PASSWORD_DEFAULT之前是 int 1; 现在是
PASSWORD_BCRYPT之前是 int 1; 现在是 string '2y'
PASSWORD_ARGON2I之前是 int 2; 现在是 string 'argon2i'
PASSWORD_ARGON2ID之前是 int 3; 现在是 string 'argon2id'
应用中如果正常使用了常量 PASSWORD_DEFAULT，PASSWORD_BCRYPT，PASSWORD_ARGON2I 和 PASSWORD_ARGON2ID 将不会受到影响。
htmlentities() will now raise a notice (instead of a strict standards warning) if it is used with an encoding for which only basic entity substitution is supported, in which case it is equivalent to htmlspecialchars().
BCMath functions will now warn if a non well-formed number is passed, such
"32foo". The argument will be interpreted as zero, as before.
Attempting to serialize a CURLFile class will now generate an exception. Previously the exception was only thrown on unserialization.
CURLPIPE_HTTP1 is deprecated, and is no longer
supported as of cURL 7.62.0.
$version parameter of curl_version()
is deprecated. If any value not equal to the default
is passed, a warning is raised and the parameter is ignored.
Calling var_dump() or similar on a DateTime or DateTimeImmutable instance will no longer leave behind accessible properties on the object.
Comparison of DateInterval objects
<, and so on) will now generate
a warning and always return
false. Previously all DateInterval
objects were considered equal, unless they had properties.
The default parameter value of idn_to_ascii() and
idn_to_utf8() is now
instead of the deprecated
The embedded server functionality has been removed. It was broken since at least PHP 7.0.
mysqli::$stat property has been removed
in favor of mysqli::stat().
The openssl_random_pseudo_bytes() function will now
throw an exception in error situations, similar to random_bytes().
In particular, an Error is thrown if the number of
requested bytes is less than or equal to zero, and an Exception
is thrown if sufficient randomness cannot be gathered.
$crypto_strong output argument is guaranteed to always
true if the function does not throw, so explicitly checking it is not necessary.
PREG_UNMATCHED_AS_NULL mode is used, trailing
unmatched capturing groups will now also be set to
[null, -1] if offset capture is enabled).
This means that the size of the
$matches will always be the same.
Attempting to serialize a PDO or PDOStatement instance will now generate an Exception rather than a PDOException, consistent with other internal classes which do not support serialization.
Reflection objects will now generate an exception if an attempt is made to serialize them. Serialization for reflection objects was never supported and resulted in corrupted reflection objects. It has been explicitly prohibited now.
Calling get_object_vars() on an ArrayObject
instance will now always return the properties of the ArrayObject
itself (or a subclass). Previously it returned the values of the wrapped
array/object unless the
flag was specified.
Other affected operations are:
(array) casts are not affected. They will continue to
return either the wrapped array, or the ArrayObject
properties, depending on whether the
flag is used.
SplPriorityQueue::setExtractFlags() will throw an exception if zero is passed. Previously this would generate a recoverable fatal error on the next extraction operation.
SplDoublyLinkedList and SplObjectStorage
now support the
mechanism in addition to the Serializable interface.
This means that serialization payloads created on older PHP versions can still be
unserialized, but new payloads created by PHP 7.4 will not be understood by older versions.
token_get_all() will now emit a
T_BAD_CHARACTER token for unexpected
characters instead of leaving behind holes in the token stream.