« Ritorna al blog

Ritorna alla lista completa degli articoli

Yoda conditions

PHP - luglio 30, 2021

La YODA conditions o notazione YODA è uno standard, uno stile di programmazione o una serie di raccomandazioni in cui le due parti di un'espressione sono invertite dall'ordine tipico in un'istruzione condizionale. Questa raccomandazione previene uno degli errori più comuni nella programmazione. Anche se l'espressione risulta corretta nella logica non lo è ai fini funzionali del nostro programma. Se ponessimo invece la variabile che ci interessa confrontare a destra dell'operatore (inversione) in caso di errore avremo un avviso appena eseguiremo il programma.

Facciamo un esempio:

1) Condizione IF classica

$i = 10;
//Bad
if($i == 10){
    echo "<h3>Benvenuto nell'area riservata</h3>";
} else {
    echo "<h3>Benvenuto nel sito</h3>";
}

2) Condizione IF con YODA (raccomandata)

$i = 10;
//Good
if(10 == $i){
    echo "<h3>Benvenuto nell'area riservata</h3>";
} else {
    echo "<h3>Benvenuto nel sito</h3>";
}

Il primo esempio non previene potenziali errori di assegnazione in quanto l'espressione ($i = 10) risulterebbe comunque corretta ma errata nella logica del nostro programma. Ponendo, invece, la variabile a destra dell'operatore, in caso di possibile errore di assegnazione (10 = $i), avremo comunque un avviso di errore simile al seguente:

Parse error: syntax error, unexpected '=' in ... on line 30