De ternaire operator in PHP kun je ' if-else "verklaringen eenvoudig om te schrijven met een regel code in plaats van met 2-5 regels code die nodig kunnen zijn voor een" if - else " statement . Het kan helpen verkorten codering tijd en kan een programma gemakkelijker te begrijpen en beter beheersbaar te maken . De ternaire operator zal een conditionele expressie evalueren en terug te keren het resultaat van een uitspraak als het waar is en een andere uitspraak als het vals is. Het vervangt deze verklaring : if ( $ x < 0 ) { $ resultaat = " negatief " ; } else { $ resultaat = " niet negatief " ;} met deze uitspraak : $ result = $ x < 0 ? " negatieve " : " niet negatief " ; Bij gebruik van de ternaire operator , volg dan de gedocumenteerde syntaxis voor expressies en voorzichtig zijn bij het maken van complexere expressies die genest verklaringen en variabelen doorgegeven door middel van verwijzing betrekken . Syntax Construeer een verklaring met de ternaire conditionele operator gebruik van een voorwaardelijke expressie , gevolgd door een vraagteken en een verklaring te evalueren of de voorwaardelijke expressie waar is , gevolgd door een dubbele punt en een verklaring te evalueren of de voorwaardelijke expressie onwaar . Bijvoorbeeld , de volgende instructie wijst waar of onwaar aan de " is_teenager " variabel op basis van iemands leeftijd : $ is_teenager = ( $ leeftijd > = 13 && $ leeftijd < = 19 ) ? true : false; Het weglaten van het Midden In PHP versie 5.3 of hoger , kunt u een nog meer verkorte expressie met behulp van de ternaire operator te creëren door het weglaten van het midden van de verklaring en het gebruik van de eerste uitdrukking als zowel de voorwaardelijke expressie en de waarde die moet worden geretourneerd als de conditionele expressie waar is . Maak een voorwaardelijke verklaring , gevolgd door een vraagteken en een dubbele punt , gevolgd door de verklaring te beoordelen of de voorwaardelijke expressie onwaar . Indien de conditionele expressie waar , het resultaat true . Bijvoorbeeld , de volgende expressie retourneert true als iemands leeftijd lager is dan 21 en anders false $ leeftijd < 21 : . ? False; nestelen Verklaringen < br > Heb ingewikkelde uitdrukkingen met behulp van geneste conditionele statements en ternaire operatoren niet maken . Wanneer je dit doet , je meestal maakt de code moeilijker te begrijpen , moeilijker te debuggen en moeilijker te onderhouden . Als je nest verklaringen , gebruiken haakjes zodat duidelijk is hoe het uiteindelijke resultaat wordt afgeleid of overwegen om een alternatieve structuur, zoals een "if - else" statement . Resultaat is een verklaring < br > Als je variabelen doorgegeven door middel van verwijzing met een ternaire operator te gebruiken , bedenk dan dat de uitdrukkingen die bij de exploitant zijn verklaringen , geen variabelen . U kunt geen gebruik maken van een variabele doorgegeven als verwijzing door zich als een statement , omdat het geen waarde heeft . In PHP 5.3 en hoger , krijgt u een waarschuwing ontvangen als u een verklaring met een enkele variabele doorgegeven door referentie te maken . |