PHP 7 - Opérateur Null Coalescing

En PHP 7, une nouvelle fonctionnalité, null coalescing operator (??)a été introduit. Il est utilisé pour remplacer leternaryopération en conjonction avec la fonction isset (). leNullL'opérateur de fusion retourne son premier opérande s'il existe et n'est pas NULL; sinon, il renvoie son deuxième opérande.

Exemple

<?php
   // fetch the value of $_GET['user'] and returns 'not passed'
   // if username is not passed
   $username = $_GET['username'] ?? 'not passed';
   print($username);
   print("<br/>");

   // Equivalent code using ternary operator
   $username = isset($_GET['username']) ? $_GET['username'] : 'not passed';
   print($username);
   print("<br/>");
   // Chaining ?? operation
   $username = $_GET['username'] ?? $_POST['username'] ?? 'not passed';
   print($username);
?>

Il produit la sortie de navigateur suivante -

not passed
not passed
not passed