Ormai PHP 7 è diventato disponibile su qualsiasi piano hosting, ma ancora leggo molto codice old-style. Ora, tralasciando tutto il resto (non sono qui a fare corsi di programmazione) volevo parlarvi di un paio di operatori che risultano molto ultili:
- spaceship operator
- null coalescing operator
Lo spaceship operator permette di sapere al volo se due valori sono uguali o quale dei due è più grande. Ad esempio:
// restituisce 0
$a = 3;
$b = 3;
echo $a <=> $b;
// restituisce 1
$a = 5;
$b = 3;
echo $a <=> $b;
// restituisce -1
$a = 3;
$b = 5;
echo $a <=> $b;
In pratica viene restituito 0 se i due valori sono uguali, 1 se quello di sinistra è maggiore e -1 se quello di destra è maggiore.
Il null coalescing operator invece permette di prendere il valore di una variabile se diversa da NULL, altrimenti prendere il valore della seconda variabile, ad esempio:
// così $x diventa uguale a $z, perché $x non è dichiarata
$z= 5;
$x = $x ?? $z;
// così $x resta invariata
$x= 3;
$z= 5;
$x = $x ?? $z;Il null coalescing operator assomiglia un po’ all’Elvis operator, che si scrive ?:, solo che il primo fa anche un isset() e non produce errori nel caso la variabile non sia definita. Ad esempio:
// così viene restituito un messaggio di errore per "Undefined variable", perché $x non è definita
$z= 5;
$x = $x ?: $z;
// così $x diventa uguale a $z
$x= null;
$z= 5;
$x = $x ?: $z;
// così $x resta invariata
$x= 3;
$z= 5;
$x = $x ?: $z;enjoy!
Ti interessa acquistare un dominio a prezzi ultraconvenienti? clicca qui
Se hai trovato utili le informazioni su questo blog,
Fai una donazione!
Clicca sul bottone qui sotto o almeno clicca sul banner pubblicitario 🙂
Commenta