Re: Class Extension
| From: | Rowan Tommins [IMSoP] | Date: | Fri, 10 Jul 2026 08:08:31 +0000 |
| Subject: | Re: Class Extension | ||
| References: | 1 2 3 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-131852@lists.php.net to get a copy of this message | ||
On 10 July 2026 05:38:08 BST, Holly Schilling <holly.a.schilling@outlook.com> wrote:
>
>There are currently 3 RFCs comprising 3 phases and feature sets to build for extensions.
Hi Holly,
Thanks for sharing those links, that gives a better idea what we're actually discussing here.
My initial reaction is that the anonymous/global extensions and named/scoped extensions feel more
like competing versions of the same feature than natural phases that build on each other.
For instance we might choose different conflict resolution behaviour if extensions are always
scoped, but would hesitate to have two different behaviours if we implemented both types of
extension.
The named/scoped version feels like it fits better with how I see PHP applications structured -
heavy reliance on autoloading, as little global bootstrapping code as possible. It also gives static
analysers and IDEs a clearer signal where to look for the extension.
For the anonymous version, does the target have to be defined for the extension to be loaded? If it
isn't, will the autoloader be called? I'm struggling to picture how I'd use that
version in practice.
Thanks for your work on this so far,
Rowan Tommins
[IMSoP]