PHP 7 - Operatore Null Coalescing

In PHP 7, una nuova funzionalità, null coalescing operator (??)è stato introdotto. Viene utilizzato per sostituire il fileternaryoperazione in congiunzione con la funzione isset (). IlNullL'operatore coalescente restituisce il suo primo operando se esiste e non è NULL; altrimenti restituisce il suo secondo operando.

Esempio

<?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);
?>

Produce il seguente output del browser:

not passed
not passed
not passed