rfc:deprecate_curly_braces_array_access

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
rfc:deprecate_curly_braces_array_access [2019/07/03 10:07] rjhdbyrfc:deprecate_curly_braces_array_access [2019/08/10 23:19] (current) derick
Line 1: Line 1:
 ====== PHP RFC: Deprecate curly brace syntax for accessing array elements and string offsets ====== ====== PHP RFC: Deprecate curly brace syntax for accessing array elements and string offsets ======
   * Date: 2019-03-12   * Date: 2019-03-12
-  * Author: Andrey Gromov <andrewgrom@rambler.ru> +  * Author: Andrey Gromov <andrewgrom@rambler.ru>, Theodore Brown <theodorejb@outlook.com
-  * Status: Voting+  * Status: Implemented (in PHP 7.4)
   * Discussion: https://externals.io/message/104744   * Discussion: https://externals.io/message/104744
-  * Target version: PHP 7.4 +  * Targets: PHP 7.4 
-  * Implementation: https://github.com/php/php-src/compare/PHP-7.4...rjhdby:deprecate_alternate_array_access+  * Implementation: https://github.com/php/php-src/pull/4416
  
 ===== Introduction ===== ===== Introduction =====
Line 67: Line 67:
  
 <code> <code>
-Warning: Array and string offset access syntax with curly braces is deprecated in test.php on line 3+Deprecated: Array and string offset access syntax with curly braces is deprecated in test.php line 3
 int(2) int(2)
 </code> </code>
Line 91: Line 91:
 should be used instead of relying on syntax that can be used for both strings should be used instead of relying on syntax that can be used for both strings
 and arrays (and thus doesn't tell you anything about the underlying type). and arrays (and thus doesn't tell you anything about the underlying type).
 +
 +
 +==== How frequently is the curly brace syntax used? ====
 +Nikita Popov checked the top 2k Composer packages, and found ~2.2k
 +individual uses of the curly brace array syntax. Compared to the 888.3k
 +total array accesses in the data set, usage of the alternative syntax is
 +about 0.25%. However, even this number is inflated somewhat due to
 +duplicate packages (for example, there are two packages that mirror the
 +WordPress Core repository, each with 182 usages). 92% of usages in the
 +top 2k packages are in just 25 unique projects.
  
  
 ==== Will it be too much work for people to migrate code away from the curly brace syntax? ==== ==== Will it be too much work for people to migrate code away from the curly brace syntax? ====
 A migration script has been implemented alongside the deprecation patch: A migration script has been implemented alongside the deprecation patch:
-https://github.com/rjhdby/php-src/blob/deprecate_alternate_array_access/convert_array_access_braces.php+https://gist.github.com/theodorejb/763b83a43522b0fc1755a537663b1863
  
  
Line 104: Line 114:
 ===== Vote ===== ===== Vote =====
 Started 3 July 2019. Ends 17th July 2019 Started 3 July 2019. Ends 17th July 2019
-<doodle title="Deprecate curly brace array and string offset syntax in PHP 7.4" auth="rjhdby" voteType="single" closed="false">+<doodle title="Deprecate curly brace array and string offset syntax in PHP 7.4" auth="rjhdby" voteType="single" closed="true">
    * Yes    * Yes
    * No    * No
Line 114: Line 124:
  
 ===== References ===== ===== References =====
-Current discussion: https://externals.io/message/104744.+Current discussion: https://externals.io/message/104744 and https://externals.io/message/106130.
  
 Discussion about deprecation in June 2008: https://externals.io/message/38153. Discussion about deprecation in June 2008: https://externals.io/message/38153.
rfc/deprecate_curly_braces_array_access.1562148455.txt.gz · Last modified: 2019/07/03 10:07 by rjhdby