Nouvelles fonctions sur Php.7
- spaceship operator <=> : retourne 0 si les deux expressions sont égales, 1 si gauche > droite, -1 si gauche < droite.
- opérateur ?? : si une variable existe, le contenu de cette variable est renvoyé, sinon l'opérateur renvoie une chaîne prédéfinie.
<?php
echo 10 <=> 10; // 0
echo 1 <=> 2; //-1
echo 2 <=> 1; //1
<?php
$prenom = $_GET['user'] ?? 'personne'; //retournera 'personne' si 'user' n'a pas de valeur
Nouveaux opérateurs :
Il est possible de définir le type de valeur que doit retourner la fonction.
<?php
function foo(): array {
return [];
} // ok
function bar(): int {
return '123';
} // pas ok
Déclaration de fonction :
Permet de génèrer un entier pseudo aléatoire crypté sécurisé.
<?php
var_dump(random_int(100, 999)); //326 dans notre cas.
Random int :
Permet de retourner un entier qui est le quotient de la division du dividende par le diviseur.
<?php
var_dump(intdiv(3, 2)); //int(1)
var_dump(intdiv(-3, 2)); //int(-1)
Int division :
Permet d'effectuer une recherche et un remplacement (search and replace) d'expression rationnelle à l'aide de rappels.
<?php
$subject = 'Aaaaaa Bbb';
preg_replace_callback_array(
[
'~[a]+~i' => function ($match) {
echo strlen($match[0]), ' matches for "a" found', PHP_EOL;
},
'~[b]+~i' => function ($match) {
echo strlen($match[0]), ' matches for "b" found', PHP_EOL;
}
],
$subject
);
//6 matches for "a" found
//3 matches for "b" found
Preg replace callback array() :
Nouvelles fonctions sur Php.7
By adelep
Nouvelles fonctions sur Php.7
- 124