Chaque version majeure et mineure de PHP apporte des changements qui méritent d’être compris au-delà du changelog. Cette série couvre ce qui compte vraiment dans chaque version : les fonctionnalités qui ont duré, celles qui n’ont pas pris, et pourquoi elles ont été ajoutées.
PHP 8.5 : l'opérateur pipe, une bibliothèque URI et beaucoup de nettoyage
PHP 8.5 est sorti le 20 novembre. Deux fonctionnalités définissent cette version : l’opérateur pipe et l’extension URI. Elles résolvent des problèmes différents, mais partagent la même motivation : rendre les opérations courantes moins maladroites à exprimer. L’opérateur pipe Les pipelines fonctionnels en PHP ont toujours été un bazar. Enchaîner des transformations nécessitait soit d’imbriquer les appels de fonctions à l’envers, soit de les découper en variables intermédiaires : // avant — se lit de droite à gauche $result = array_sum(array_map('strlen', array_filter($strings, 'strlen'))); // ou verbeux mais lisible $filtered = array_filter($strings, 'strlen'); $lengths = array_map('strlen', $filtered); $result = array_sum($lengths); // après — se lit de gauche à droite $result = $strings |> array_filter(?, 'strlen') |> array_map('strlen', ?) |> array_sum(?); L’opérateur |> passe la valeur de gauche dans l’expression de droite. Le placeholder ? marque où elle va. Les pipelines se lisent maintenant dans l’ordre où les opérations se produisent : gauche à droite, haut en bas. ...