...:::Programozz kedvedre!:::...
Menü
 
HTML
 
PHP
 
Az Operátorok

Az operátor fogalma

Vannak már változóink, amiket eddig egyszerűen kiírtunk. A változókkal számtalan műveletet végezhetünk, ehhez azonban megfelelő műveleti jelekre van szükségünk. Ezeket a műveleti jeleket hívjuk operátoroknak, az elemeket, amikkel a műveletet végezzük operandusoknak, magát a műveletet pedig kifejezésnek:

Az elvégezhető műveleteket több csoportba sorolhatjuk:

<?php
$a_szam = 5;
$b_szam = 7;
$c_szam = $a_szam + $b_szam;   // ez az egész egy kifejezés
print ($c_szam);               // kiírja 5 és 7 összegét
?>

Most lássuk a fontosabb operátorokat.

fel...

String operátorok

A string operátorokkal karaktersorokat illeszthetünk össze. A karaktersor lehet egy változó, vagy állandó tartalma, vagy akár közvetlenül egy idézőjelekkel meghatározott szövegbeillesztés. Karaktersorokat összefűzhetünk a . (pont) operátorral, illetve létező karaktersorhoz rövidebb írásmóddal is hozzáfűzhetünk további karaktersort a .= operátorral.

Példa string operátorra:

<?php
$a = "Kiss ";
$b = "Béla ";
$c = $a . $b;   // $c értéke: Kiss Béla
$c .= " kalaplengető";   // $c értéke: Kiss Béla kalaplengető
?>

fel...

Aritmetikai operátorok

Az aritmetikai operátorokkal számtani műveleteket végezhetünk.

név operátor példa megfelelője
összefűzés . $a . $b
hozzáfűzés .= $a .= $b $a = $a . $b

Egy példa a modulus operátorra:

<?php
$a_szam = 12;
$b_szam = 5;
$c_szam = $a_szam % $b_szam;   // értéke 12/5 maradéka, azaz 2
?>

fel...

Hozzárendelő operátorok

Legegyszerűbb példája az egyenlőségjel:

<?php
$a_szam = 5;
?>

Egy értéket rendeltünk az $a_szam változóhoz. Mindig a bal oldali operandus (ami az egyenlőségjel bal oldalán áll) kapja a jobb oldali kifejezést értékül. Nem keverendő össze a == jellel, amivel két operandus azonosságát vizsgáljuk.
Kissé bonyolultabb, de gyakran használt formái:

<?php
$a_szam = 3;
$a_szam += 5;   // ugyanaz, mint $a_szam = $a_szam + 5, eredménye 8

$b_szam = 8;
$b_szam -= 5;   // ugyanaz, mint $a_szam = $a_szam - 5, eredménye 3

$b_szam = 8;
$b_szam *= 5;   // ugyanaz, mint $a_szam = $a_szam * 5, eredménye 40
?>

név operátor példa
összeadás + $a + $b
kivonás - $a - $b
szorzás * $a * $b
osztás / $a / $b
modulus (maradék) % $a % $b

fel...

Összehasonlító operátorok

Az összehasonlító operátorok a két oldalon levő értékeket hasonlítják össze és logikai igaz (TRUE), vagy hamis (FALSE) értéket adhatnak.

név operátor példa megfelelője
értékadás = $a = $b;
hozzáadás += $a += $b; $a = $a + $b;
csökkentés -= $a -= $b; $a = $a - $b;
érték szorzása *= $a -= $b; $a = $a - $b;
érték osztása /= $a /= $b; $a = $a / $b;
modulus (maradék) %= $a %= $b; $a = $a % $b;

Jól érzékelhető a lényeges különbség az == és a === operátor között, ha a 12 és a "12" értékeket vizsgáljuk. Ezek egyenlők, de nem azonosak, mivel az egyik integer, a másik string típusú (idézőjelek között van).

fel...

Logikai operátorok

A logikai operátorok logikai operandusokkal (boolean típusú változókkal) végeznek műveleteket és az eredményük is egy logikai érték lesz.
Például TRUE || FALSE eredménye TRUE, azaz igaz vagy hamis eredménye mindig igaz. Lássunk gyorsan egy igazságtáblát a logikai operátorokra.

név operátor igaz, ha
egyenlő == két érték megegyező
nem egyenlő != két érték különböző
azonos === az értékek és a típusok is egyeznek
nem azonos !== az értékek és/vagy a típusok különbözőek
nagyobb > bal oldal nagyobb a jobb oldalnál
nagyobb, vagy egyenlő >= a bal oldal nagyobb, vagy egyenlő a jobb oldallal
kisebb < bal oldal kisebb a jobb oldalnál
kisebb, vagy egyenlő <= a bal oldal kisebb, vagy egyenlő a jobb oldallal
A kimenet igaz, ha minden bemenet igaz.
ÉS logikai kapcsolat
x y eredmény
FALSE FALSE FALSE
TRUE FALSE FALSE
FALSE TRUE FALSE
TRUE TRUE TRUE
A kimenet igaz, ha legalább egy bemenet igaz.
VAGY logikai kapcsolat
x y eredmény
FALSE FALSE FALSE
TRUE FALSE TRUE
FALSE TRUE TRUE
TRUE TRUE TRUE
 
A kimenet igaz, ha minden bemenet egyforma.
KIZÁRÓ VAGY logikai kapcsolat
x y eredmény
FALSE FALSE TRUE
TRUE FALSE FALSE
FALSE TRUE FALSE
TRUE TRUE TRUE
A kimenet mindig a bemenet fordítottja.

Na, ez szép színesre sikerült... És most lássuk a logikai operátorokat, végülis ezért jöttünk ide:

INVERZ logikai kapcsolat
x eredmény
FALSE TRUE
TRUE FALSE

fel...

Növelő/csökkentő operátorok

A PHP támogatja a C-szerű ún. elő- és utónövekményes ill. csökkentő operátorokat. Ezek egy számszerű értéket növelnek, illetve csökkentenek.
Tehát $a++; ugyanaz, mintha ezt írnánk: $a = $a + 1;

<?php
$a = 5;
$a++;
print ($a);   // kiírja, hogy 6
?>

név operátor igaz, ha
tagadás (inverz) ! az egyetlen operandus hamis
és && a bal, és a jobb is igaz
vagy || a bal, vagy a jobb igaz
és and a bal és a jobb is igaz
kizáró vagy xor vagy a bal, vagy a jobb igaz
vagy or a bal, vagy a jobb igaz

Láthatjuk, a különbség a kétféle növelés, illetve csökkentés között, hogy az érték visszaadása előtt, vagy után végzi-e el az érték módosítását. Ennek a ciklusoknál lesz jelentősége.

fel...

A végrehajtás sorrendje

Ha egy kifejezésben több műveletet kell végrehajtani, a műveletek végrehajtási sorrendje (prioritása) előre meghatározott. Például az && művelet előbb kerül végrehajtásra, mint a ||. A végrehajtási sorrendet zárójelek használatával ettől eltérően is meghatározhatjuk.

<?php
$a = 5 + 6 * 2;     // ennek eredménye 17
                    // mert a szorzást az összeadás előtt hajtja végre

$a = (5 + 6) * 2;   // ennek eredménye már 22
                    // mivel itt a zárójelekkel más sorrendet írtuk elő
?>

A PHP más operátorokat is támogat, itt csak a leggyakrabban használtakat tárgyaltuk. A további operátorolókról a PHP kézikönyvben olvashatsz itt.

név operátor igaz, ha
előnövekményes ++$a Növeli $a-t eggyel, majd visszaadja $a értékét
utónövekményes $a++ Visszaadja $a értékét, majd növeli $a-t eggyel
előcsökkentő --$a Csökkenti $a-t eggyel, majd visszaadja $a értékét
utócsökkentő $a-- Visszaadja $a értékét, majd csökkenti $a-t eggyel
 
Bejelentkezés
Felhasználónév:

Jelszó:
SúgóSúgó
Regisztráció
Elfelejtettem a jelszót
 
XHTML
 
Linkek

Freewebsite
Programozás.lap.hu
Webmester.lap.hu

 

Veterán anime rajongók egyik kedvence a Vadmacska kommandó. Retrospektív cikket olvashatsz róla az Anime Odyssey blogban    *****    Parfümök, Olajok, Párologtatók mind egy weboldalon! Siess mert nyitási AKCIÓNK nem sokáig tart! Nagy kedvezmények várnak    *****    Dryvit, hõszigetelés! Vállaljuk családi házak, nyaralók és egyéb épületek homlokzati szigetelését! 0630/583-3168 Hívjon!    *****    Aki érdeklõdik a horoszkópja után, az nem kíváncsi, hanem intelligens. Rendeld meg most és én segítek az értelmezésben!    *****    A Múzsa, egy gruppi élményei a színfalak mögött + napi agymenések és bölcseletek    *****    KARATE OKTATÁS *** kicsiknek és nagyoknak *** Budapest I. II. XII.kerületekben +36 70 779-55-77    *****    Augusztus 26-án Kutyák Világnapja! Gyertek a Mesetárba, és ünnepeljétek kutyás színezõkkel! Vau-vau!    *****    A horoszkóp elemzésed utáni érdeklõdés, nem kíváncsiság hanem intelligencia. Rendeld meg és nem fogod megbánni. Katt!!!    *****    Cikksorozatba kezdtem a PlayStation történelmérõl. Miért indult nehezen a Sony karrierje a konzoliparban?    *****    Will Vandom Rajongói Oldala &#9829; nosztalgia W.I.T.C.H. a javából, 2006 óta &#9829; Te még emlékszel?    *****    A horoszkóp a lélek tükre, egyszer mindenkinek bele kell néznie. Tedd meg te is, én segítek értelmezni! Kattints! Várlak    *****    Nagyon részletes születési horoszkóp + 3 éves elõrejelzés + kötetlen idejû beszélgetés diplomás asztrológussal! Kattints    *****    Smart Elektronika - Arduino és Okos Elektronikai termékek webáruháza .Álmodd meg, alkosd meg, vezéreld a jövõt!    *****    Smart Elektronika - Arduino és Okos Elektronikai termékek webáruháza .Álmodd meg, alkosd meg, vezéreld a jövõt!    *****    A horoszkóp a lélek tükre, egyszer mindenkinek bele kell néznie, itt: www.csillagjovo.gportal.hu    *****    Dryvit, hõszigetelés! Vállaljuk családi házak, nyaralók és egyéb épületek homlokzati szigetelését. 0630/583-3168    *****    Nézzen velünk Debreceni Prémium lakásokat! Simonyi ingatlan Nézzen velünk Debreceni Prémium lakásokat! Simonyi ingatlan    *****    Ha egy igazán egyedi és szerethetõ sportanimével szeretnél megismerkedni, tégy egy próbát az Ookiku Furikabutte-vel.    *****    Augusztus 8-án Nemzetközi Macskanap! Addig is gyertek a Mesetárba, és olvassátok el a legújabb cicamesét! Miaúúú!    *****    Smart Elektronika - Arduino és Okos Elektronikai termékek webáruháza .Álmodd meg, alkosd meg, vezéreld a jövõt!