Kurz PHP – operátory, pokračovanie
Logické operátory
Logické operátory sa používajú ku kombinovaniu výsledkov logických podmienok. Môže nás napríklad zaujímať, či je hodnota premennej $a medzi 0 a 100. Budeme musieť otestovať podmienky $=>0 a $a<=100 – využijeme operátor AND.
$a >= 0 && $a <= 100
PHP podporuje logické operátory AND, OR, XOR (exkluzívne alebo, viď nižšie) a NOT.
if($d == 4 xor $ == 7 xor $f == 10) echo “Toto sa nevypíše”;
Táto podmienka nebude splnená, pretože je prepojená operátorom xor a teda celá podmienka je nepravdivá. Podmienky xor vyžadujú, aby práve jedna z podmienok bola pravdivá a teda zvyšné dve už nie.
| Operátor | Názov | Použitie | Výsledok |
| ! | NOT | !$b | Vracia true, pokiaľ je $b rovné false a naopak |
| && | AND | $a && $b | Vracia true, pokiaľ sú $a i $b true, inak false |
| || | OR | $a || $b | Vracia true, pokiaľ je aspoň jeden z $a alebo $b true, inak vráti false |
| and | AND | $a and $b | To isté čo &&, ale s nižšou prioritou |
| or | OR | $a or $b | To isté čo ||, ale s nižšou prioritou |
Operátory and a or majú nižšiu prioritu než operátory && a ||. Priority preberieme o chvíľku.
Bitové operátory
Umožňujú považovať celé číslo za postupnosť bitov. Pravdepodobne ich v PHP veľmi nevyužijete, ale uvádzam ich zoznam v tabuľke…
| Operátor | Názov | Použitie | Výsledok |
| & | bitový AND | $a & $b | Bity nastavené v $a i v $b budú nastavené vo výsledku |
| | | bitový OR | $a | $b | Bity nastavené v $a alebo v $b budú nastavené vo výsledku |
| ~ | bitový NOT | ~$a | Bity nastavené v $a nebudú nastavené vo výsledku |
| ^ | bitový XOR | $a ^ $b | Bity nastavené v $a elbo $b, ale nie v oboch, budú nastavené vo výsledku |
| << | posun vľavo | $a << $b | Posunie $a doľava o $b bitov |
| >> | posun vpravo | $a >> $b | Posunie $a doprava o $b bitov |
Ostatné operátory
Okrem operátorov, ktoré sme dosiaľ prebrali, existuje ešte mnoho ďalších. Operátor čiarka (,) sa používa k oddeleniu argumentov funkcií a iných zoznamov. Ďalšie dva zvláštne operátory, new a -> sa používajú k vytvoreniu inštancie triedy, resp. k prístupu k členom triedy (viac v lekcii o objektovo orientovanom programovaní). Operátory prvku pole ( [] ) umožňujú získať prístup k poliam. Viac si o nich povieme v lekcii o poliach.
Ternárny operátor
Tento operátor funguje rovnako ako v jazyku C. Má tvar:
podmienka ? hodnota v prípade splnenia : hodnota v prípade nesplnenia
Tento operátor sa dá nahradiť príkazom if-else a je to vlastne akási jeho skrátená verzia . Podmienkové štruktúry preberieme neskôr. Príklad:
($hodnotenie > 50 ? 'Prešiel' : 'Neprešiel');
V prípade, že študent napísal test na viac ako 50%, vráti tento výraz ‘Prešiel’. Inak vráti ‘Neprešiel’.
Operátor potlačenia chybovej správy
Operátor potlačenia chybovej správy (@) môžete použiť pred akýmkoľvek výrazom teda pred čímkoľvek, čo generuje alebo vracia nejakú hodnotu. Pokiaľ týmto spôsobom potlačíte výpisy chybových správ, mali by ste si napísť vlastné spracovanie chybových stavov pre prípad, že by podobná situácia nastala. Pokiaľ máte v PHP nastavené track_errors na On, budú chybové správy uložené v globálnej premennej $php_errormsg .
Priorita a smer: vyhodnotenie výrazov
Obecne platí, že operátory majú prioritu alebo poradie, v ktorom savyhodnocujú. Takisto majú udaný smer, čo je určenie, z ktorej strany sa budú vyhodnocovať operátoryrovnakej priority. Buď zľava doprava, sprava doľava alebo na smere nezáleží. Nasledujúca tabuľka ukazuje prioritu a smer operátorov, pričom platí, že operátory s najnižšou prioritou sú umiestnené hore.
| Smer | Operátor |
| zľava | , |
| zľava | or |
| zľava | xor |
| zľava | and |
| sprava | |
| zľava | = += -= *= /= .= %= &= |= ^= ~= <<= >>= |
| zľava | ? : |
| zľava | || |
| zľava | && |
| zľava | | |
| zľava | ^ |
| zľava | & |
| nezáleží | == != === |
| nezáleží | < <= > >= |
| zľava | << >> |
| zľava | + – . |
| zľava | * /% |
| sprava | ! ~ ++ — (int) (double) (string) (array) (object) @ |
| sprava | [] |
| nezáleží | new |
| nezáleží | () |
Všimnite si, že najvyššiu prioritu má operátor, ktorý sme ešte neprebrali: staré dobré guľaté zátvorky. Ich úloha je rovnaká ako v matematike: zvýšiť prioritu výrazu v nich. Vďaka nim môžeme pravidlá o priorite obísť. Platí, že najvnútornejšie zátvorky (môžete ich použíť koľko chcete) sa vyhodnotia ako prvé.
V budúcom dieli nášho kurzu sa zoznámime s riadiacimi štruktúrami v PHP, čo bude významný krok vpred na vašej ceste v poznávaní jazyka PHP. Doporučujem pohrať sa s operátormi v tejto lekcii a vyskúšať si v kóde ich použítie. Nasávať teoretické vedomosti je síce pekné, ale programátora z vás spraví len prax. Práve preto programujte, programujte a programujte.


Pekny clanok, ale php asi nebudem robit
/
A prečo nie?