Operátory

1. Aritmetické operátory

Matematická operácia Príklad Výsledok
súčet $cislo = 12+8 20
rozdiel $cislo = 12-8 4
násobenie $cislo = 12*8 96
delenie $cislo = 12/8 1.5
zvyšok po delení $cislo = 12%8 4

Priorita vykonávania operácií platí ako v matematike. Teda násobenie a delenie sú vykonávané skôr ako sčítanie a odčítanie. Ak chceme najskôr sčítať, musíme použiť zátvorky.

Ak máme už deklarovanú premennú a chceme k nej pričítať (odčítať, vynásobiť, vydeliť) nejaké číslo, môžeme využiť zjednodušeného zápisu. Uvažujme premennú $var = 12.

Matematická operácia Príklad Výsledok
pričítanie $var = $var+8 20
pričítanie $var += 8 20
odčítanie $var -= 8 4
vynásobenie $var *= 8 96
vydelenie $var /= 8 1.5
zvyšok po delení $var %= 8 4

Inkrementácia (zvýšenie), dekrementácia (zníženie). Uvažujme premennú $var = 12.

Matematická operácia Príklad Výsledok
o jednotku viac $var++ 13
o jednotku menej $var– 11
$y = $var++ $y = 12, $var=13
$y = $var– $y = 12, $var=11
$y = ++$var $y = 13, $var=13
$y = –$var $y = 11, $var=11

Príklad:

echo "Dnes je: ".Date("j. m. Y");
  echo "Zajtra bude: ".Date ("j. m. Y",time()+86400); // 86400=24*60*60
  echo "Práve je: ".Date ("H:i:s ");
  echo "O hodinou bude: ".Date ("H:i:s",Time()+3600); // 3600=60*60

Výsledok príkladu:

Dnes je: 29. 11. 2012
Zajtra bude: 30. 11. 2012
Práve je: 22:50:47
O hodinou bude: 23:50:47

2. Logické operátory

Vracajú len dva stavy: true alebo false. Využívajú sa napríklad pri cykloch alebo vetvení.

logický operátor Príklad
rovnosť ==
nerovnosť !=
je väčší <
je menší >
väčší alebo rovný <=
menší alebo rovný >=
a zároveň … &&
alebo … ||
negácia (opak) !
podmienený operátor vyraz1 ? vyraz2 : vyraz3

Podmienený operátor znamená, že pokiaľ je výraz1 == true, výsledkom je výraz2. Pokiaľ je vyraz1 == false, výsledkom je vyraz3.

Príklad:

$a = "7";
  $b = 7.00;
  echo "výsledok_1 = ".($a == $b);
  echo "výsledok_2 = ".(($a == $b) && (gettype($a) == gettype($b)));

Výsledok príkladu:

výsledok_1 = 1
výsledok_2 =

Príklad:

$a = 4;
  $b = 5;
  $c = 6;
  echo "výsledok_1 = ".($a == 4 && $b == 5 && $c == 6);
  echo "výsledok_2 = ".($a == 3 or $b == 5);
  echo "výsledok_3 = ".!($a == 4 && $b == 5 && $c == 6);

Výsledok príkladu:

výsledok_1 = 1
výsledok_2 = 1
výsledok_3 =

3. Bitové operátory

Tieto operátory pracujú v binárnom tvare a každú operáciu vykonávajú na jednotlivých bitoch (PHP pracuje s 32bitovými číslami).

operácia Príklad
bitové násobenie x$ & y$
bitové sčítavanie x$ | y$
bitová negácia x$ ` y$
bitový posun doprava x$ >> y$
bitový posun doľava x$ << y$
zmení 0 na 1 v prvom čísle x$ ^ y$

Príklad:

echo (6 & 5);   // 6 » 110, 5 » 101
  echo (6 | 5);   // 6 » 110, 5 » 101

Výsledok príkladu:

4   // 4 » 100
7   // 7 » 111

Echo alebo print?

Príkaz echo nemôže byť súčasťou výrazu, pretože nevracia žiadnu hodnotu.
Príkaz print hodnotu vracia, tak ho môžeme do výrazu zaradiť. Inak by mali byť tieto príkazy rovnaké.

Operátor potlačenia chybových hlásení

Operátor @ sa používa k vypnutiu chybových správ vstavaných funkcií.

Príklad:

echo "1. typ: ".(5 / 0);
  echo "2. typ: ".@(5 / 0);

Výsledok príkladu:

  1. typ: Warning: Division by zero in ..cesta.. on line ..riadok..
  2. typ: