Operatore di coalescenza null in PHP
Consideriamo il seguente codice:
<?php
if (isset($arr['test'])) {
$elem = $arr['test'];
} else {
$elem = 'empty';
}
?>
Questo codice può essere riscritto utilizzando l'operatore ternario:
<?php
$elem = isset($arr['test']) ? $arr['test'] : 'empty';
?>
Tuttavia, sia la prima versione del codice, che la seconda,
presentano una certa scomodità. Per semplificare
questo tipo di costrutti è stato ideato l'operatore
di coalescenza null, rappresentato
dal comando ??. Riscriviamo il nostro
codice utilizzando questo operatore:
<?php
$elem = $arr['test'] ?? 'empty';
?>
Riscrivi il seguente codice utilizzando l'operatore studiato:
<?php
$user = ['name' => 'john', 'age' => 30];
if (isset($user['name'])) {
$name = $user['name'];
} else {
$name = 'unknown';
}
?>