Depuis décembre 2020, la nouvelle version PHP-8.0 est disponible à l’utilisation en production sur les sites web.

Depuis sa sortie, voici une liste des bons points que permet PHP-8

Améliorations PHP-8

  • Compatibilité des codes PHP-7 vers PHP-8
  • Performances d’exécution
  • Exécution de codes rapides mis en cache
  • Nouvelles fonctions PHP-8

Compatibilité des codes PHP-7 vers PHP-8

Lorsque PHP-8 sera disponible auprès des hébergeurs web et que vous l’aurez activé, la compatibilité des codes PHP-7 en PHP-8 rendra votre site utilisable sans modification préalable.

Exécution de code mis en cache

PHP-8 permet la compilation de code à la volée (Just In Time) avec jitPHP plus rapidement qu’en PHP-7 avec OPcache.

Dans de nombreux cas, du code PHP a besoin d’être exécuté pour des micro-traitements, dits à la volée (Exemple de code PHP exécuté à la volée), l’amélioration de ce temps d’exécution est une bonne nouvelle.

Au niveau des performances entre jitPHP(PHP-8) et OPcache(PHP-5 et PHP-7), voici un exemple en vidéo

Performances d’exécution

Comparons la vitesse d’exécution d’un même code PHP sous différentes versions :

Nouvelles fonctions PHP-8

str_contains()

Cette nouvelle fonction booléenne permet la recherche de texte contenu dans un autre texte et remplace le code
if(strpos("Long texte base", "texte") !== false){//texte présent}else{//texte absent}
Par
if(str_contains("Long texte base", "texte"){//texte présent}else{//texte absent}

get_debug_type()

La fonction get_debug_type() améliore la fonction gettype() en résolvant le nom de classe ainsi :

Valeur gettype() get_debug_type()
1 integer int
0.1 double float
true boolean bool
false boolean bool
null NULL null
« WordPress » string string
[1,2,3] array array
Une classe qui s’appelle « Foo\Bar » object Foo\Bar
Une classe anonyme object class@anonymous