PHP 7, les nouveautés

Amis Webmasters et autres développeurs informatiques, vous n’êtes pas sans savoir que la version PHP 7 est à présent disponible. D’ailleurs, nous avions publié, il y a peu de temps, un billet sur les performances que l’on pouvait attendre de cette nouvelle version du langage PHP en terme de vitesse d’exéxution. Et les résultats étaient plutôt bluffants.

Cependant, au-delà des très bonnes performances de PHP 7, des nouveautés ont fait leur apparition. Rien de révolutionnaire mais ce sont les petits plus qui font la différence. Voici quelques unes de ces nouveautés PHP.

formation PHP 0 Lille, Douai, Arras, Valenciennes

Un nouvel opérateur de comparaison

Simple à mettre en oeuvre, <=> permet de comparer deux expressions. Il retourne 0 en cas d’éalité des deux expressions, 1 dans le cas ou l’expression de de gauche est plus grande et -1 si c’est l’expression de droite qui est plus grande.

//On peut comparer du numérique

echo 10 <=> 10; //  retourne 0 

echo 10 <=> 30; // retourne -1

 echo 12 <=> 5; // retourne 1

//On peut comparer du texte

echo "e" <=> "e"; // retourne 0

 echo "a" <=> "c"; // retourne -1

 echo "g" <=> "c"; // retourne 1

//On peut comparer des tableaux

echo [1, 2, 3] <=> [1, 2, 3]; // retourne 0

 echo [1, 2, 3] <=> [1, 2, 1]; retourne 1

 echo [1, 2, 3] <=> [1, 2, 6]; // retourne -1

On comprend de suite que ce nouvel opérateur de comparaison permet d’économiser quelques lignes de codes.

De plus, il permet de classer les éléments d’une liste.

//Soit $data un tableau représentant une liste d'éléments (noms, dates, etc...) 

usort($data, function ($left, $right) { return $left[1] <=> $right[1]; });

Une déclaration de fonctions améliorée

En effet, il est à présent possible en PHP 7 de définir ce que le type du produit scalaire que la fonction va renvoyer.

function hello(): String { return "Hello World"; } 

function tableau(): Array { return [1, 2, 3]; }

function naissance(): DateTime { return null; // va lever une erreur }

Tester l’existence d’une variable

Plutôt que de passer par la valeur d’une variable avec un if (isset($var)) le nouvel opérateur ?? permet d’affecter directement une valeur par défaut si la variable n’existe pas.

$identite = $_GET['login'] ?? 'inconnu'; renvoie inconnu si $_GET['login'] n'est pas défini

Evolution du switch

La syntaxe du switch évolue quelque peu. Bizarrerie du PHP, jusqu’à présent, il était possible de placer plusieurs default au sein d’un switch. La chose est à présent proscrite.

switch ($monExpression) { 

default: maFonction1();

 break; 

default: maFonction2();

 }

A l’exécution, une erreur de type E_COMPILE_ERROR sera levé.

Bien entendu, beaucoup d’autres nouveautés avec PHP 7. Si vous souhaitez en savoir plus au sujet des classes, des fonctions, des dépréciations, etc,… Je vous invite à farfouiller dans le manuel du PHP.

Source : Live Creative

PHP 7, les nouveautés
Votez pour ce billet !

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *