A változó

Folytassuk a Bloglexikon programozási sorozatát az alapfogalmakkal. Az egyik legalapvetőbb alapfogalom a változó. Minden programnak valamilyen adatokkal kell foglalkoznia: megszerezni őket valahonnan, mindenféle módokon átalakítani, az eredményként kapott adatokat közölni. Voltaképpen minden program, ami egyáltalán való valamire, az arra való, hogy adatokat dolgozzon föl. Még egy zenelejátszó program is: a számadatok formájában tárolt zenét a hangkártyára kiküldött adatokká alakítja.
  Míg dolgozunk az adatokkal, valahol tárolnunk kell őket. Erre túl egyszerű válasz, hogy a memóriában, mert persze hogy ott. De a memória nagy, nekünk pedig sokféle adatunk lehet. Egy nagyobbacska program több ezer különféle adat tárolását igényelheti. Tudni kell, hogy melyik melyik. Ezért vannak a változók. Fiókokhoz szokták őket hasonlítani, amik egy nagy szekrényben vannak; a szekrény a memória. Minden fiókon címke van, ez a változó neve; a fiókban pedig egy papírlapra írva valami, ez a változó értéke.
  Vegyünk egy példát. Egy számológépprogramnak minimum három számot kell tárolnia: kettőt, amiken az éppen aktuális műveletet el kell végezni, és egy harmadikat, amibe az eredmény kerül. BASIC nyelven így néz ki egy olyan utasítás, ami összeadja két változó értékét és az eredményt egy harmadikba teszi:

eredmeny = egyik + masik

Régebbi BASIC-nyelvjárásokban:

LET eredmeny = egyik + masik

Ugyanez Pascal nyelven:

eredmeny := egyik + masik;

PHP nyelven pedig:

$eredmeny = $egyik + $masik;

Ez egy matematikai művelet, de nem a matematikusok nyelvén. Egy matematikus az egyiket úgy olvasná: e-szer g-szer y-szor i-szer k. A programozó változónevei több betűből is állhatnak, csak ékezetes betű nem lehet bennük. Az is különbözik, hogy a fenti szöveget a matematikus állításnak fogja föl: „azt állítom, hogy eredmeny egyenlő egyik és masik összegével”. A programozó viszont utasít: „legyen eredmeny egyenlő egyik és másik összegével”. Még pontosabban: „vedd egyik és masik értékét, add össze őket, és az összeget tárold eredmeny néven”. A számítógépnek mindig utasításokat adunk, nem tényeket közlünk vele. (Egy nagyon speciális programnyelv, a Prolog kivételével, de az más kategória.)

Két változótípus létezik: numerikus, ami számot tárol, és szöveges. Programozóul a „szöveg” bármilyen hosszúságú jelsorozatot jelent, akár egyetlen betűt is; sőt létezik az „üres szöveg” fogalma is, aminek a hosszúsága nulla byte. A kétféle változóval más-másféle műveleteket lehet végezni. Nem tartozik szorosan tárgyunkhoz, de említést érdemel, hogy a legtöbb nyelvben többféle numerikus változó létezik, amik különböző számú byte-ot használnak és azokon különböző módokon kódolják a számokat, így más-másféle számtartományok tárolására alkalmasak. A programozó szükség szerint választ közülük. Ez azért nem tartozik tárgyunkhoz, mert célunk a PHP bemutatása, ott pedig csak egyféle numerikus típus van.

»»»»»»