PHP 7.1 : et bien non !
15 septembre 2016 —This post is also available in English.
Ceci est le neuvième article d’une série à propos de PHP 7.1.
J’ai parlé ces derniers jours de plusieurs évolutions que nous retrouverons bientôt dans PHP 7.1. Cela dit, sur environ un an de durée de développement, de nombreuses autres idées ont été évoquées, de nombreuses autres RFCs ont été rédigées.
Certaines de ces RFCs sont arrivées jusqu’à la phase de votes et ont été rejetées, d’autres n’ont pas été jusqu’au bout du processus, certaines ont pu être annulées au profit d’autres… Bref, de nombreux points ont été discutés sans pour autant passer et je vais essayer d’en dresser une très rapide liste ici.
Pour commencer, voici quelques RFCs rejetées ou annulées, qui retiennent mon attention lorsque je relis leurs titres :
- Short closures
- Number Format Separator
- "
var
" Deprecation - PHP Attributes
- Functional Interfaces
- Callable Types
- Union Types
- Typed Properties
- Enable
session.use_strict_mode
by default var_info
var_type
- Precise Session Management
IntlCharsetDetector
Et voici d’autres points qui ont été discutés, mais sans que les RFCs correspondantes n’aillent jusqu’au vote (je crois) ; et donc, qui ne sont ni passés ni rejetés :
- Operator Overloading
array_key_(first|last|index)
token_get_all()
flag to return consistent elements- Adopt Code Of Conduct
- Make Libsodium a Core Extension
- Class Friendship
- Add HTTP/2 Support to the CLI Server
- Add
PHP_ENGINE
Constant - Deprecations for PHP 7.1
- Callable constructors
- Short ternary Equal Operator
- Generic Types and Functions
- Anonymous Class Lexical Scope
- Intersection Types
- Forbid
$this
being null in instance methods - Allow loading extensions by name
- Automatic CSRF Protection
- Third-party editing of RFCs
- Simple Annotations
- Separate overloaded operations when assigning
- Simple Cryptography Library
- Arrow Functions
- Revisit trailing commas in function arguments
- Trailing Commas In List Syntax
- Automatic SQL Injection Protection
- Allow default value in
list()
syntax
Certaines de ces propositions étaient intéressantes… Et même si la plupart d’entre elles ne reviendront pas sur le devant de la scène tout de suite, il est probable que quelques-unes seront rediscutées dans le futur !