Salve utenti,
potreste spiegarmi cosa fa questa riga di codice:
Grazie!Codice PHP:
$customer_notification = (SEND_EMAILS == 'true') ? '1' : '0';
![]()
Salve utenti,
potreste spiegarmi cosa fa questa riga di codice:
Grazie!Codice PHP:
$customer_notification = (SEND_EMAILS == 'true') ? '1' : '0';
![]()
SEND_EMAILS è una costante booleana, se vale true $customer_notification diventa 1, altrimenti diventa 0. Notare che questa riga è identica a scrivereCodice PHP:
$customer_nofication = SEND_EMAILS;
Si tratta dell'operatore ternario
Il codice che hai postato è equivalente a:
In pratica viene valutata la condizione posta prima del simbolo ? e a seconda che essa sia vera oppure falsa viene restituito il valore posto dopo il simbolo ? opuure il simbolo : rispettivamente.Codice PHP:
if (SEND_EMAILS == 'true') {
$customer_notification = '1';
} else {
$customer_notification = '0';
}
"Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)
La parte dopo l'uguale si chiama operatore ternario, praticamente è come una if, e dice "domanda ? se vero : se falso"
Nel tuo caso se la costante SEND_EMAILS è == true restituisce 1, altrimenti restituisce 0.
Ovviamente il valore viene salvato nella variabile $customer_notification
E' equivalente (ma più lungo) scrivere
Le prime volte che si incontra può sembrare un po ostico, ma da quando ho imparato a usarlo il codice che scrivo è diventato più snello e leggibileCodice PHP:
if(SEND_EMAILS == 'true'){
$customer_notification = '1';
}else{
$customer_notification = '0';
}
Spero di averti spiegato bene![]()
Originariamente inviato da duri93
il codice che scrivo è diventato più snello e leggibile![]()
lo amo, il ternary![]()
http://en.wikipedia.org/wiki/%3F:
C# ha pure il doppio ternary http://msdn.microsoft.com/en-us/library/ms173224.aspx - una vera bellezza
![]()
www.sitemeer.com » Quando un sito pare irraggiungibile
Se ti piace ci puoi trovare anche su Facebook
Grazie a tutti, quindi un modo più rapido e semplice di scrivere una condizione if!![]()