Ternariusz

Z PHPEdia.pl
Skocz do: nawigacji, wyszukiwania

Operator warunkowy — skrócona wersja instrukcji warunkowej if.

Przykład

(2 == 2) ? print 'tak' : print 'nie';

Wynik działania:

tak

Jest to odpowiednik kodu:

if(2 == 2) {
  print 'tak';
} else {
  print 'nie';
}

Nawiasy okrągłe nie są konieczne, ale zwiększają czytelność kodu.

Ternariusz zawsze zwraca jakąś wartość, dlatego taki kod:

echo (1 == 2) ? 'tak' : 'nie';

Wyświetli

nie

A taki:

(1 == 2) ? echo 'tak' : echo 'nie';

Zwróci błąd:

Parse error: syntax error, unexpected T_ECHO

(ponieważ instrukcja echo nie zwraca żadnej wartości, w przeciwieństwie do print w poprzednim przykładzie).