Questo è chiamato yoda syntax o condizioni yoda.
Viene utilizzato per evitare incarichi accidentali.
Se si dimentica un segno di uguale fallirà
if(false = $a)
fallisce la compilazione
if($a = true)
assegna il valore della true
alla variabile $a
e valuta come true
Il Wordpress Coding Standards menzione questo particolare:
if (true == $the_force) {
$victorious = you_will($be);
}
Durante i confronti logici, posizionare sempre la variabile sul lato destro , costanti o letterali a sinistra.
Nel precedente esempio, se si omette un segno di uguale (ammetterlo, succede anche al più esperto di noi), si otterrà un errore di analisi, perché non è possibile assegnare ad una costante come vero. Se la dichiarazione fosse la alternativa ($ the_force = true), l'assegnazione sarebbe perfettamente valida, restituendo 1, facendo sì che l'istruzione if venisse valutata a true e si potrebbe essere a caccia di quell'errore per un po '.
Un po 'bizzarro, è, da leggere. Abituati, lo farai.
[Yoda Conditions] (http://en.wikipedia.org/wiki/Yoda_Conditions) –
Perché taged a 'C' Ho confuso :( –
@GrijeshChauhan la stessa legge funziona anche su C.Posto costante a sinistra di operatore di confronto è buono ed evita incarichi accidentali –