The T_PAAMAYIM_NEKUDOTAYIM
token representing the ::
characters sequence is often a source of confusion the first time it is encountered.
The T_PAAMAYIM_NEKUDOTAYIM
token first appeared in version 0.5 of the Zend Engine, which powered PHP 3, and which was developed in Israel.
This continues to remind us of the major contribution the Israeli community has brought to PHP by laying its modern foundation.
This information is available on the Scope Resolution Operator[1] page.
Seeing a really cryptic message during a parse error can lead to frustrations as it's not obvious what is wrong. Although it is true that a simple online search will usually grant an explanation of what the issue is.
However, PHP is for most people their first programming language and therefore may not have the instinct to do an online search and will end up frustrated.
We believe that PHP is still an active and growing language and that improving the newcomer experience is something we should strive for.
Rename the T_PAAMAYIM_NEKUDOTAYIM
token to its alias T_DOUBLE_COLON
.
And make T_PAAMAYIM_NEKUDOTAYIM
an alias to T_DOUBLE_COLON
.
None, as T_PAAMAYIM_NEKUDOTAYIM
will become an alias to T_DOUBLE_COLON
.
PHP 8.0.
Starting with PHP 8.0, it is possible to deprecate global constants within the engine [2], therefore we might consider deprecating the T_PAAMAYIM_NEKUDOTAYIM
constant in a future version.
Yes/No with 2/3 majority.
Voting started 2020-06-25 and ends 2020-07-09.