⊗ppPmCdTO 101 of 447 menu

Ternaarne operaator PHP-s

Oletagem, et meil on järgmine kood, mis kontrollib kas kasutaja on juba <18 aastat vana või mitte:

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

Nagu näete, on <if-else konstruktsioon vajalik ainult selleks, et kirjutada muutujasse <$adult kindel väärtus. Selliste ülesannete jaoks, kus tingimuses toimub ainult ühe muutuja väärtustamine, on olemas lühem lahendus nn <ternaarse operaatori kaudu.

Selle süntaks on järgmine:

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

Operaator töötab nii: kui tingimus on tõene, siis tagastatakse <value1, vastasel juhul - <value2. Kirjutame üles tunni alguses toodud koodi uuesti, kasutades ternaarset operaatorit:

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

Muide, võib tulemust mitte muutujasse kirjutada, vaid kohe väljastada läbi <var_dump:

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

Ternaarset operaatorit tuleks kasutada ainult kõige lihtsamatel juhtudel, kuna selle kasutamine raskendab koodi mõistmist.

Oletagem, et on antud muutuja <$num, mis võib olla kas negatiivne või positiivne. Kirjutage muutujasse <$res arv <1, kui muutuja <$num on suurem või võrdne nulliga, ja arv <-1, kui muutuja <$num on väiksem kui null.

Eesti
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Me kasutame saidi toimimiseks, analüüsi ja personaliseerimiseks küpsiseid. Andmete töötlemine toimub vastavalt Privaatsuspoliitikale.
nõustu kõigega häälesta keeldu