Re: [RFC] Strict Namespace Resolution

From: Date: Thu, 16 Jul 2026 12:53:11 +0000
Subject: Re: [RFC] Strict Namespace Resolution
References: 1  Groups: php.internals 
Request: Send a blank email to internals+get-131966@lists.php.net to get a copy of this message
Hi On 2026-07-15 02:54, Paul M. Jones wrote:
Per feedback from Tim Tim Düsterhus <https://externals.io/message/131332#131899> I have extracted the declare(strict_namespace=1) portion of the function autoloading proposal to its own RFC. - RFC: https://wiki.php.net/rfc/strict-namespace - PR: https://github.com/php/php-src/pull/22736
Thank you for the RFC. I'm, probably unsurprisingly, in favor. However I agree with Rowan that the naming of the directive could be made clearer. I could imagine declare(global_fallback=0) (with 1 being the default) being a reasonable option between clarity and brevity. With regard to the “RFC Impact” section, the “None” for the ecosystem is not quite accurate: Static analyzers and IDEs will want to learn about the directive to 1. Emit diagnostics when a function or constant is not explicitly imported and doesn't exist in the namespace. 2. Emit diagnostics when the directive is not used despite being configured as “desirable” to make sure it is consistently applied within an entire project. This kind of “work being imposed because otherwise the tools would be worse than they could be” on downstream projects is the main goal of the “Ecosystem Impact” section, obvious compatibility breaks are already listed in the “Backward Incompatible Changes” section :-) Best regards Tim Düsterhus

« previous php.internals (#131966) next »