On Tue, 24 Feb 2026, 00:00 Kamil Tekiela, <[email protected]> wrote:

> On Mon, 23 Feb 2026 at 21:29, Joshua Rüsweg <[email protected]> wrote:
> >
> > Hi internals,
> >
> > I'd like to propose a new language feature for PHP: Readonly Variables.
> >
> > PHP currently has no way to declare a variable as immutable within a
> local or functional scope. This RFC proposes the readonly modifier for
> variables, which prevents reassignment after the initial declaration and
> results in an error on any attempt to do so.
> >
> > The RFC is available at:
> > https://wiki.php.net/rfc/readonly-variables
> >
> > I'm looking forward to your feedback and discussion.
> >
> > Cheers,
> > Joshua Rüsweg
>
> Hi Joshua,
>
> This is a very interesting proposal, but I feel like you haven't
> explained all your choices. I have some questions:
>
> 1. Why the use of readonly keyword? Why not const or some new keyword,
> e.g. locked.
>
> I would prefer starting with readonly parameters as I feel that would
> bring the most value.
> I think it would also be worthwhile to investigate a simpler syntax
> for define().
>
>
Hi Kamil, Joshua,
I wrote on this topic in the past:
https://news-web.php.net/php.internals/126909
and I think we already cannot use readonly and final for parameter, as that
conflicts with constructor parameter promotion:
> if we ever decide to use the final modifier for a
parameter, it would not be possible.
> it is already not possible to use the readonly modifier for a parameter
because of this

I think that using const keyword might be one of the best options.

-- 
Alex

Reply via email to