Mise à jour du 18/12/2024
PHP 8.4 est disponible depuis quelques semaines. Cette version apporte des évolutions pour les développeurs, une amélioration des performances et des nouveautés sur le langage. Par exemple, on peut utiliser des collections en lecture seule. Cela signifie qu'elles ne peuvent pas être modifiées qand elles sont initialisées. La notion d'immutabilité est importante pour garantir l'intégrité des collections et donc des données :
$collection = new ReadonlyCollection([1, 2, 3]);
$collection[0] = 5; // Throws an error
Sur les performances, PHP 8.4 améliore le JIT (compilation just in time). Les benchmarks semblent prometteurs. Sur la syntaxe, on peut désormais accéder aux membres d'une classe sans utiliser de parenthèses, cela simplifie la syntaxe. Sur la gestion des tableaux, PHP 8.4 introduit 4 nouvelles fonctions array : find, find_key, any et all. Les équipes ont aussi voulu simplifier la création des objets DateTime.
Les hooks de propriété sont là pour vous aider à mieux gérer la programmation objet. Cette version propose aussi la visilibilité asymétrique. Sur une même propriété, on peut avoir une "vue" différente par exemple selon un accès en lecture ou un accès en écriture de la propriété. On peut alors avoir une visibilité différente selon l'accès qui est réalité. Cela oblige à typer les propriétés. Toutes les propriétés ne sont pas concernées.
Les lazy objects (objets paresseaux) sont supportés par le langage. Ces objets sont instanciés uniquement quand on doit les utiliser. Cela évite de surcharger la stack et donc d'impacter les performances.
Attention : PHP 8.4 déprécie des fonctions. Vérifiez la liste des dépréciations pour adapter vos codes.
Commentaires
"l'intégraté" : un nouveau genre d'intégrité ?
"Les équipes ont aussi voulu simplifier la créer des objets DateTime." : c'est si simple que je n'ai rien compris
"Sur une même proprité" : propreté ? propriété ?
"(objets paresseaux)" : ne pas confondre avec les oiseaux passereaux
"Veuillez à bien vérifier": Oui, je veux bien y veiller
bonjour, toutes nos excuses pour ces erreurs. Nous avons mis à jour cette actualité