Introduire de nouvelles fonctionnalités en PHP 7

Utpal Biswas
Utpal Biswas

Follow

Jan 2, 2019 – 3 min lu

La communauté PHP est très excitée d’accueillir cette dernière version. Mais cela ne signifie pas que php a été stagnant à ce moment. Ils ont mis à jour tant de choses pendant ce temps, mais PHP 7 est une version totalement nouvelle avec des fonctionnalités excitantes.

La VITESSE est la fonctionnalité étonnante que PHP 7 apporte dans cette version. Les développeurs ont travaillé très dur pour refactoriser le code PHP afin de réduire la consommation de mémoire et d’augmenter les performances et ils ont certainement réussi. parallèlement à cela, il y a quelques autres fonctionnalités que je vais décrire ci-dessous.

Comme nous le savons, PHP est considéré comme un langage faiblement typé. En substance, cela signifie que PHP ne vous oblige pas à déclarer des types de données. Les variables ont toujours des types de données qui leur sont associés, mais vous pouvez faire des choses radicales comme ajouter une chaîne de caractères à un nombre entier sans qu’il en résulte une erreur. Les déclarations de types peuvent vous aider à définir ce qui doit se produire afin d’obtenir les résultats attendus. Cela peut également rendre votre code plus facile à lire. Nous allons regarder quelques exemples spécifiques peu après

Instructions de type scalaire

Avec PHP 7, nous avons maintenant ajouté des types scalaires. Plus précisément : int, float, string, et bool.

En ajoutant des indications sur les types scalaires et en permettant des exigences strictes, on espère que des programmes PHP plus corrects et auto-documentés pourront être écrits. Cela vous donne également plus de contrôle sur votre code et peut rendre le code plus facile à lire.

Voici un exemple avec non strict

function total(float $a, float $b) {
return $a + $b;
}

sortie

total(2.8, "3.2");
// string "3.2" changed to float(3.2) no notice
//returns float(6)

sortie avec avertissement

total(2, "1 week"); 
// int(2) changed to float(2.0) and string "1 week" changed to float(1.0) but you will get a "Notice: A non well formed numeric value encountered"
//returns float(3)

Si une inadéquation de déclaration de type se produit, une « erreur fatale » est lancée avec l’humeur stricte activée. voici l’exemple

declare(strict_types=1);function total(float $a, float $b) {
return $a + $b;
}total(2, "1 week");
// Fatal error: Uncaught TypeError: Argument 2 passed to total() must be of the type float, string giventotal(2.5, 1);
// int(1) change to float(1.0)
//returns float(3.5)

comme nous le voyons lorsque nous utilisons l’humeur stricte « on », l’avertissement est devenu Erreur qui est très utile et structuré pour comprendre et obtenir la sortie désirée de la base de code.

Déclarations de type de retour

PHP 7 supporte également les déclarations de type de retour qui supportent tous les mêmes types que les arguments. Pour spécifier le type de retour, nous ajoutons un deux-points puis le type juste avant la crochetée ouvrante.

function total(float $a, float $b) : float {}

Nouveaux opérateurs :

PHP 7 nous apporte également quelques nouveaux opérateurs. Le premier que nous allons explorer est l’opérateur vaisseau spatial. L’opérateur vaisseau spatial, ou opérateur de comparaison combiné, est un ajout agréable au langage, complétant les opérateurs plus grand que et moins grand. like

$compare = 2 <=> 1
2 < 1? return -1
2 = 1? return 0
2 > 1? return 1

Opérateur de coalescence nul

Un autre nouvel opérateur, l’opérateur de coalescence nul, est effectivement le légendaire if-set-or. Il retournera l’opérande de gauche s’il n’est pas NULL, sinon il retournera l’opérande de droite. comme

$name = $firstName ?? "Guest";

Avant 7.X c’était comme

if (!empty($firstName)) $name = $firstName;
else $name = "Guest";

Ce qui rend cela encore plus puissant, c’est que vous pouvez les empiler ! Cette opération va vérifier chaque élément de gauche à droite et quand si elle en trouve un qui n’est pas nul, elle va utiliser cette valeur. like

$name = $firstName ?? $username ?? $placeholder ?? "Guest";

C’est amusant n’est-ce pas ??

Si vous êtes prêt à commencer à jouer avec PHP7 allez jeter tous les changements dans PHP 7. X

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.