Re: [RFC] Deprecate dynamic properties

From: Date: Wed, 10 Nov 2021 14:31:26 +0000
Subject: Re: [RFC] Deprecate dynamic properties
References: 1  Groups: php.internals 
Request: Send a blank email to internals+get-116314@lists.php.net to get a copy of this message
On Wed, Aug 25, 2021 at 12:02 PM Nikita Popov <nikita.ppv@gmail.com> wrote: > Hi internals, > > I'd like to propose the deprecation of "dynamic properties", that is > properties that have not been declared in the class (stdClass and > __get/__set excluded, of course): > > https://wiki.php.net/rfc/deprecate_dynamic_properties > > This has been discussed in various forms in the past, e.g. in > https://wiki.php.net/rfc/locked-classes as a class modifier and > https://wiki.php.net/rfc/namespace_scoped_declares / > > https://github.com/nikic/php-rfcs/blob/language-evolution/rfcs/0000-language-evolution.md > as a declare directive. > > This RFC takes the more direct route of deprecating this functionality > entirely. I expect that this will have relatively little impact on modern > code (e.g. in Symfony I could fix the vast majority of deprecation warnings > with a three-line diff), but may have a big impact on legacy code that > doesn't declare properties at all. > I plan to open voting on this RFC soon. Most of the feedback was positive, apart from the initial choice of opt-int mechanism, and that part should be addressed by the switch to the #[AllowDynamicProperties] attribute. Regards, Nikita

« previous php.internals (#116314) next »