I want to bring up this RFC once again given that now seems to be the right
timing for it. I have previously canceled the vote when I initially
proposed this to land on 7.2 which was seen as too big of a BC for a minor
version. On a second attempt targeting 8.0 I have also canceled the vote as
the inclusion of a deprecation notice in cases where the behavior will
change warranted further discussion.
To address these issues, the current version of the RFC will have 2
- Introduce the new behavior on 8.0
- Introduce a deprecation notice on 7.3
For those not familiar with the RFC, the general idea is that currently,
any array that has a number n as it's first numeric key will have for it's
next implicit key either n+1 if n >= 0 or 0 if n < 0. This RFC proposes to
make this consistent by always using n+1 regardless of the sign of n.
$a[-2] = true; // Current: Key is -2, RFC: Key is -2
$a = true; // Current: Key is 0, RFC: Key is -1
$a = true; // Current: Key is 1, RFC: Key is 0
I invite you to read the full RFC:
https://wiki.php.net/rfc/negative_array_index and bring up any issues you
see with the current version before the voting period starts.
Looking forward for any feedback.