L' operatore ternario in PHP permette di scrivere semplici dichiarazioni " if-else " con una riga di codice , piuttosto che con 2-5 righe di codice che potrebbero essere necessarie per una dichiarazione " if-else " . Si può aiutare il tempo di codifica accorciare e può fare un programma di più facile comprensione e più gestibile . L' operatore ternario valuterà un'espressione condizionale e restituire il risultato di una dichiarazione, se è vero e un'altra istruzione se è falsa . Sostituisce questa dichiarazione : if ( $ x < 0 ) { $ risultato = " negativo " ; } else { $ risultato = " non negativo ";} con questa dichiarazione : $ risultato = $ x < 0 ? "negativo" : " non negativo" ; Quando si utilizza l' operatore ternario , seguire la sintassi documentata per le espressioni e usare cautela quando si creano espressioni più complesse che coinvolgono le dichiarazioni e le variabili passate per riferimento annidati . Sintassi
Costruire una dichiarazione con l'operatore condizionale ternario utilizzando un'espressione condizionale , seguito da un punto interrogativo e una dichiarazione di valutare se l'espressione condizionale è vero, seguito da due punti e una dichiarazione di valutare se l'espressione condizionale è falsa . Ad esempio, l' istruzione seguente assegna true o false alla variabile " is_teenager " in base all'età di una persona :
$ is_teenager = ( $ età > = 13 && $ età < = 19 ) ? true: false ;
Tralasciando il Medio
In PHP versione 5.3 o successiva, è possibile creare un'espressione ancora più abbreviata utilizzando l' operatore ternario omettendo il centro del dichiarazione e utilizzando la prima espressione sia come espressione condizionale e il valore da restituire se l'espressione condizionale è vera . Creare un'istruzione condizionale , seguito da un punto interrogativo e un due punti , seguita dalla dichiarazione di valutare se l'espressione condizionale è falsa . Se l'espressione condizionale è vero, il risultato è true. Ad esempio , la seguente espressione restituisce true se l'età di una persona è inferiore a 21 e falso altrimenti
$ età < 21 : . ? False;