Ok quindi ho appena realizzato un comportamento strano con PHP e vorrei sapere perché questo accade. Quindi, l'esecuzione di questo codice:Dichiarazione ternaria PHP che usa 'e'
var_dump(true and false ? 'one' : 'two');
uscite
boolean true
invece di 'due' come ci si aspetterebbe ... Il problema sembra essere con 'e'.
Esecuzione:
var_dump(true && false ? 'one' : 'two');
uscite
string 'two' (length=3)
proprio come previsto. Perché utilizzare 'e' invece di '& &' causa questo strano comportamento? Non dovrebbero essere uguali?
Mi piacerebbe sapere la risposta a questo. La mia ipotesi è l'ordine .. Nel primo, falso è usato per l'operatore ternario che esce per vero e 'due', che valuta il vero ... – DanRedux
Sembra che avevo ragione. : P – DanRedux