⊗ppPmCdTO 101 of 447 menu

Ternära operatorn i PHP

Låt oss säga att vi har följande kod som kontrollerar om användaren redan är 18 år gammal eller inte:

<?php $age = 17; if ($age >= 18) { $adult = true; } else { $adult = false; } var_dump($adult); ?>

Som du ser behövs konstruktionen if-else bara för att skriva ett visst värde till variabeln $adult. För sådana uppgifter, när vårt villkor endast resulterar i att en variabel sätts, finns det ett kortare lösning genom den så kallade ternära operatorn.

Dess syntax är som följer:

<?php variable = condition ? value1 : value2; ?>

Operatorn fungerar så här: om villkoret är sant, returneras value1, annars value2. Låt oss skriva om koden från början av lektionen med hjälp av den ternära operatorn:

<?php $age = 17; $adult = $age >= 18 ? true: false; var_dump($adult); ?>

Man kan förresten inte skriva resultatet till en variabel, utan omedelbart skriva ut det via var_dump:

<?php $age = 17; var_dump( $age >= 18 ? true: false ); ?>

Den ternära operatorn bör endast användas i de enklaste fallen, eftersom dess användning försvårar förståelsen av koden.

Låt en variabel $num ges, som kan vara antingen negativ eller positiv. Skriv till variabeln $res talet 1 om variabeln $num är större än eller lika med noll, och talet -1 om variabeln $num är mindre än noll.

roiditcspt