Ternær operatør i PHP

La oss si at vi har følgende kode som sjekker om brukeren allerede er 18 år eller ikke:

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

Som du ser, brukes if-else-konstruksjonen kun for å skrive en bestemt verdi til variabelen $adult. For slike oppgaver, hvor betingelsen kun resulterer i tilordning av én variabel, finnes det en kortere løsning via den såkalte ternære operatøren.

Dens syntaks er som følger:

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

Operatøren fungerer slik: hvis betingelsen er sann, returneres value1, ellers - value2. La oss omskrive koden fra begynnelsen av leksjonen ved hjelp av den ternære operatøren:

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

Du kan forresten ikke skrive resultatet til en variabel, men umiddelbart utskrive det via var_dump:

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

Den ternære operatøren bør kun brukes i de enkleste tilfellene, da bruken av den vanskeliggjør forståelsen av koden.

Задание 1

La det være gitt en variabel $num som kan være enten negativ eller positiv. Skriv til variabelen $res tallet 1 hvis variabelen $num er større enn eller lik null, og tallet -1 hvis variabelen $num er mindre enn null.