note 130147 added to migration80.incompatible
| From: | rshaw8k@yahoo.com | Date: | Sun, 16 Mar 2025 01:05:37 +0000 |
| Subject: | note 130147 added to migration80.incompatible | ||
| Groups: | php.notes | ||
| Request: | Send a blank email to php-notes+get-221977@lists.php.net to get a copy of this message | ||
Bullet points given in the section "Other incompatible Changes" begin with the text shown:
PHP Core
Other incompatible Changes
* match is now a reserved keyword.
* mixed is now a reserved word, so it cannot be used to name ...
* Assertion failures now throw by default. If the old behavior ...
* Methods with the same name as the class are no longer interpreted as constructors. ...
* The ability to call non-static methods statically has been removed. Thus ...
* The (real) and (unset) casts have been removed.
* The track_errors ini directive has been removed. ...
* The ability to define case-insensitive constants has been removed. ...
* The ability to specify an autoloader using an __autoload() ...
* The errcontext argument will no longer be passed to custom ...
* create_function() has been removed. Anonymous functions may be used instead.
* each() has been removed. foreach or ArrayIterator should be used instead.
* The ability to unbind this from closures that were created from ...
* The ability to unbind this from proper closures that contain ...
* The ability to use array_key_exists() with objects has ...
* The behavior of array_key_exists() regarding the type of ...
* Any array that has a number ''n'' as its first numeric key will use
''n+1'' for its next implicit key, ...
* The default error_reporting level is now E_ALL. Previously ...
* display_startup_errors is now enabled by default.
* Using parent inside a class that has no parent will now result in a fatal ...
* The @ operator will no longer silence fatal errors ...
* #[ is no longer interpreted as the start of a comment, as ...
* Inheritance errors due to incompatible method signatures (LSP violations) will now always
generate a fatal error ...
* The precedence of the concatenation operator has changed relative to bitshifts and addition as
well as subtraction.
* Arguments with a default value that resolves to null at runtime will no longer implicitly mark
the argument type as ...
* A number of warnings have been converted into Error exceptions:
* Attempting to assign multiple bytes to a string offset will now emit a warning.
* Unexpected characters in source files ... will now result in a ParseError exception ...
* Uncaught exceptions now go through "clean shutdown", which means that destructors will
be called after an uncaught exception.
* The compile time fatal error "Only variables can be passed by reference" has been
delayed until runtime, and ...
* Some "Only variables should be passed by reference" notices have been converted to ...
* The generated name for anonymous classes has changed. It will now include the name of the first
parent or ...
* Non-absolute trait method references in trait alias adaptations are now required to be
unambiguous: ...
* The signature of abstract methods defined in traits is now checked against the implementing
class method: ...
* Disabled functions are now treated exactly like non-existent functions ...
* data:// stream wrappers are no longer writable, which matches the documented behavior.
* The arithmetic and bitwise operators +, -, *, /, **, %, <<, , &, |, ^, ~, ++, -- will
...
* Float to string casting will now always behave locale-independently. ...
* Support for deprecated curly braces for offset access has been removed. ...
* Applying the final modifier on a private method will now produce a warning ...
* If an object constructor exit()s, the object destructor will no longer be called. ...
* Namespaced names can no longer contain whitespace: ...
* Nested ternaries now require explicit parentheses.
* debug_backtrace() and Exception::getTrace() will no longer provide ...
* Numeric string handling has been altered to be more intuitive and ...
* Magic Methods will now have their arguments and return types checked ...
* call_user_func_array() array keys will now be interpreted as ...
* Declaring a function called assert() inside a namespace is no longer allowed, ...
----
Server IP: 45.112.84.4
Probable Submitter: 45.112.84.18 (proxied: 63.155.116.161)
----
Manual Page -- https://php.net/manual/en/migration80.incompatible.php
Edit -- https://main.php.net/note/edit/130147
Del: integrated -- https://main.php.net/note/delete/130147/integrated
Del: useless -- https://main.php.net/note/delete/130147/useless
Del: bad code -- https://main.php.net/note/delete/130147/bad+code
Del: spam -- https://main.php.net/note/delete/130147/spam
Del: non-english -- https://main.php.net/note/delete/130147/non-english
Del: in docs -- https://main.php.net/note/delete/130147/in+docs
Del: other reasons-- https://main.php.net/note/delete/130147
Reject -- https://main.php.net/note/reject/130147
Search -- https://main.php.net/manage/user-notes.php