pgerzson Thu Jan 3 12:19:30 2002 EDT Modified files: /phpdoc/hu/language variables.xml Log: revise translation and correct some typos and composition errors
Index: phpdoc/hu/language/variables.xml diff -u phpdoc/hu/language/variables.xml:1.17 phpdoc/hu/language/variables.xml:1.18 --- phpdoc/hu/language/variables.xml:1.17 Thu Dec 27 19:38:16 2001 +++ phpdoc/hu/language/variables.xml Thu Jan 3 12:19:30 2002 @@ -1,6 +1,6 @@ <?xml version="1.0" encoding="iso-8859-2"?> <!-- EN-Revision: 1.26 Maintainer: goba Status: ready --> -<!-- CREDITS: kgergely --> +<!-- CREDITS: kgergely,pgerzson --> <chapter id="language.variables"> <title>Változók</title> @@ -10,7 +10,7 @@ <simpara> PHP-ban a változókat egy dollárjel utáni változónév jelöli. - A változónevek case sensitiv-ek, vagyis kisbetű-nagybetű különböző. + A változónevek érzékenyek kis- és nagybetűk különbözőségére. </simpara> <para> @@ -23,9 +23,9 @@ <note> <simpara> - Ebben az esetben egy betű lehet angol betű karakter - a-z-ig és A-Z-ig, valamint az ASCII karakterek - 127-es kódtól 255-ös kódig (0x7f-0xff). + Ebben az esetben egy betű lehet az angol abc egy betűje + a-z-ig és A-Z-ig, valamint a 127-től 255-ig terjedő + (0x7f-0xff) ASCII kódú karakterek. </simpara> </note> @@ -51,38 +51,35 @@ egy kifejezést rendelünk egy változóhoz, az eredeti kifejezés egészének értéke másolódik a célváltozóba. Ez azt jelenti, hogy ha például egy változó értékét egy másikhoz rendeljük, egyikük - megváltozása sincs hatással a másikra. Ha több infót szeretnél - az ilyen jellegű hozzárendelésekről, nézd meg a - <link linkend="language.expressions">Kifejezések</link> - című részt. + megváltozása sincs hatással a másikra. Nézd át + <link linkend="language.expressions">Kifejezések</link> c. fejezetet, + ahol az ilyen jellegű hozzárendelésekről több információ található. </para> <para> PHP 4-ben lehetőség van egy másik hozzárendelési módra: - <emphasis>változó cím szerinti átadására</emphasis>. + <emphasis>változó referencia szerinti hozzárendelésére</emphasis>. Ez azt jelenti, hogy az új változó egyszerűen hivatkozik (más szóval "alias lesz", vagy "rá mutat") az eredetire. Az új változón végzett változtatások az eredetit is érintik és fordítva. Ez azt is jelenti, hogy nem történik másolás; - ugyanis a hozzárendelés sokkal gyorsabban történik. Igaz ugyan, - hogy ez a sebességnövekedés csak "szoros" ciklusokban, - vagy nagy tömböknél, objektumoknál jelentkezik. [azért - függvényeknél elég hasznos tud lenni, hogy nem kell egy - nagy tömböt átpasszírozni a stacken a függvény számára.] + ekképpen a hozzárendelés gyorsabban történik meg. Igaz ugyan, + hogy ez a sebességnövekedés csak "feszes" ciklusokban vagy + nagy tömböknél ill. objektumok átadásakor jelentkezik. </para> <para> - Ha egy referenciának szeretnénk értéket adni, egyszerűen írjunk - egy "and" (&) jelet az átadandó változó neve elé. - [C rulez] Például az alábbi kód kiírja kétszer, hogy 'Nevem Bob': + Referencia szerinti értékadáshoz egyszerűen & jelet kell + az átadandó változó neve elé írni. Az alábbi kód - például - kiírja + kétszer, hogy 'Nevem Bob': <informalexample> <programlisting role="php"> <![CDATA[ <?php -$foo = 'Bob'; // 'Bob' hozzárendelése $foo-hoz -$bar = &$foo; // Hivatkozás $foo-ra $bar-ban. -$bar = "Nevem $bar"; // $bar megváltoztatása... -echo $foo; // $foo is megváltozik. -echo $bar; +$ize = 'Bob'; // 'Bob' hozzárendelése $ize-hoz +$bigyo = &$ize; // Hivatkozás $ize-ra $bigyo-ban. +$bigyo = "Nevem $bigyo"; // $bigyo megváltoztatása... +echo $ize; // $ize is megváltozott +echo $bigyo; ?> ]]> </programlisting> @@ -90,22 +87,22 @@ </para> <para> - Itt egy fontos dolgot kell megjegyeznünk: csak megnevezett változókra + Fontos megjegyezni, hogy csak megnevezett változókra lehet referenciát létrehozni. <informalexample> <programlisting role="php"> <![CDATA[ <?php -$foo = 25; -$bar = &$foo; // Ez egy érvényes hozzárendelés. -$bar = &(24 * 7); // Érvénytelen; referencia egy névtelen kifejezésre. +$ize = 25; +$bigyo = &$ize; // Ez egy érvényes hozzárendelés. +$bigyo = &(24 * 7); // Érvénytelen referencia egy névtelen kifejezésre. function test() { return 25; } -$bar = &test(); // Érvénytelen. +$bigyo = &test(); // Érvénytelen. ?> ]]> </programlisting> @@ -118,27 +115,27 @@ <title>Előre definiált változók</title> <simpara> - A PHP egy csomó előre definiált változót biztosít az összes - futó szkriptnek. Sok ilyen változót nem lehet rendesen dokumentálni, - mert függnek a szervertől, amelyen futnak, függnek a verziótól - és a konfigurálástól, és más gyéb tényezőktől. Néhány ilyen - változó nem elérhető, ha a PHP parancssorból fut. + A PHP egy számos előre definiált változót biztosít az bármely + futó szkript számára. Sokat ezek közül nem lehet teljes pontossságal + dokumentálni, mert függnek a a futtató szervertől, a használt verziótól, + a konfigurálástól, és más gyéb tényezőktől. Néhány ilyen változó nem + elérhető, ha a PHP parancssorból fut. </simpara> <simpara> - Ezen tényezők ellenére itt egy lista az előre definiált - változókról, amit egy PHP 3 tipikus installálásakor elérhetők - Az <ulink url="&url.apache;">Apache</ulink> 1.3.6-ot használva. + E tényezők ellenére az alábbi listában azok az előre definiált + változók vannak felsorolva, amelyek a PHP 3 tipikus installálásakor elérhetők + az <ulink url="&url.apache;">Apache</ulink> 1.3.6-ot használva. </simpara> <simpara> - Az összes előre definiált változót kilistázhatod, és sok más hasznos - információt megtudhatsz a <function>phpinfo</function> használatával. + Az összes előre definiált változó kilistázható, és sok más hasznos + információt is közöl a <function>phpinfo</function>. </simpara> <note> <simpara> - Ez a lista nem teljes, nem is ez a célja. Ez egyszerűen csak - egy útmutató, amiben benne van, hogy milyen típusú - előre definiált változókat érhetsz el. + Ez a lista nem teljes, nem is ez a célja. Ez csak + egy útmutató arról, hogy milyen típusú előre + definiált változók lehetnek. </simpara> </note> @@ -147,16 +144,16 @@ <simpara> Ezek a változók az <ulink url="&url.apache;">Apache</ulink> - webszerver változói. Ha másik szervert futtatsz, nincs rá - garancia, hogy ugyanazokat a változókat elérheted; néhányuk - hiányozhat, vagy esetleg itt nem szereplőket biztosíthat - a szerver számodra. Számos változó dokumentált a - for in the <ulink url="&url.cgispec;">CGI 1.1 - specifikációban</ulink>, azokra bizton számíthatsz. + webszerver változói. Ha másik szerveren fut a PHP, nincs rá + garancia, hogy ugyanezek a változók akkor is rendelkezésre állnak: + némelyik hiányozhat, esetleg itt nem szereplőket is biztosíthat + a szerver. Számos a <ulink url="&url.cgispec;">CGI 1.1 + specifikációban</ulink> dokumentált változókra biztosan lehet alapozni. </simpara> <simpara> - Vedd figyelembe, hogy ha a PHP-t parancssorból (command line) indítod, - ezen változók töredékének lehet csak értelme, ha egyáltalán léteznek. + Figyelni kell arra, hogy ha a PHP parancssorból (command line) használva + a változók töredékének van csak értelme, ha egyáltalán definiáltak ilyen + esetben. </simpara> <para> @@ -174,8 +171,8 @@ <term>$SERVER_NAME</term> <listitem> <simpara> - A server (host) neve, ami alatt a szkript fut. Ha - a szkript virtuális hoston fut, a virtuális host neve. + A gazdagép (host) neve, ami alatt a szkript fut. Ha + a szkript virtuális host-on fut, a virtuális host neve. </simpara> </listitem> </varlistentry> @@ -184,8 +181,8 @@ <term>$SERVER_SOFTWARE</term> <listitem> <simpara> - Server azonosító string, ami a kérések válaszának - fejlécében szerepel. + Serverazonosító sztring, amely a kérésekre (request) adott válasz (response) + fejlécében (header) szerepel. </simpara> </listitem> </varlistentry> @@ -204,8 +201,7 @@ <term>$REQUEST_METHOD</term> <listitem> <simpara> - Melyik kérési formát használt, aki az oldalt - lekérte pl. 'GET', 'HEAD', 'POST', 'PUT'. + Az oldal eléréséhez használt kérési forma, pl.: 'GET', 'HEAD', 'POST', 'PUT'. </simpara> </listitem> </varlistentry> @@ -214,8 +210,7 @@ <term>$QUERY_STRING</term> <listitem> <simpara> - Az oldalt meghívó URL-ben a kérdőjel után - szereplő rész, ha létezik. + Keresési kérdés, az oldalt meghívó URL-ben a ? után szereplő rész, ha létezik. </simpara> </listitem> </varlistentry> @@ -224,7 +219,7 @@ <term>$DOCUMENT_ROOT</term> <listitem> <simpara> - A www dokumentumok főkönyvtára, ami alatt a jelenlegi + A www dokumentumok főkönyvtára, amely alatt a jelenlegi szkript fut. Ez a szerver konfigurációs fájljában meghatározott érték. </simpara> @@ -235,9 +230,9 @@ <term>$HTTP_ACCEPT</term> <listitem> <simpara> - Az <literal>Accept:</literal> HTTP fejléc - tartalma, ha éppen van ilyen. Ebben adja meg a böngésző, - hogy milyen formátumokat képes fogadni. + Az aktuális kérés <literal>Accept:</literal> HTTP fejlécének + tartalma, ha van ilyen. Ebben adja meg a böngésző, hogy milyen + formátumokat képes fogadni. </simpara> </listitem> </varlistentry> @@ -246,8 +241,8 @@ <term>$HTTP_ACCEPT_CHARSET</term> <listitem> <simpara> - Az <literal>Accept-Charset:</literal> HTTP fejléc - tartalma, ha éppen van ilyen. pl. 'iso-8859-1,*,utf-8'. + Az aktuális kérés <literal>Accept-Charset:</literal> HTTP fejlécének + tartalma, ha van ilyen. pl. 'iso-8859-1,*,utf-8'. </simpara> </listitem> </varlistentry> @@ -256,8 +251,8 @@ <term>$HTTP_ENCODING</term> <listitem> <simpara> - Az <literal>Accept-Encoding:</literal> HTTP - fejléc értéke, ha éppen van ilyen. pl. 'gzip'. + Az aktuális kérés <literal>Accept-Encoding:</literal> HTTP fejlécének + tartalma, ha van ilyen. pl. 'gzip'. </simpara> </listitem> </varlistentry> @@ -266,8 +261,8 @@ <term>$HTTP_ACCEPT_LANGUAGE</term> <listitem> <simpara> - Az <literal>Accept-Language:</literal> HTTP fejléc - értéke, ha éppen van ilyen. pl. 'en'. + Az aktuális kérés <literal>Accept-Language:</literal> HTTP fejlécének + tartalma, ha van ilyen. pl. 'en'. </simpara> </listitem> </varlistentry> @@ -276,8 +271,8 @@ <term>$HTTP_CONNECTION</term> <listitem> <simpara> - A <literal>Connection:</literal> HTTP fejléc értéke, - ha éppen van ilyen. pl. 'Keep-Alive'. + Az aktuális kérés <literal>Connection:</literal> HTTP fejlécének + tartalma, ha van ilyen. pl. 'Keep-Alive'. </simpara> </listitem> </varlistentry> @@ -286,8 +281,8 @@ <term>$HTTP_HOST</term> <listitem> <simpara> - A <literal>Host:</literal> HTTP - fejléc értéke, ha éppen van ilyen. + Az aktuális kérés <literal>Host:</literal> HTTP fejlécének tartalma, + ha éppen van ilyen. </simpara> </listitem> </varlistentry> @@ -297,9 +292,9 @@ <listitem> <simpara> Annak az oldalnak az URL címe, ahonnan ide - került a látogató. Ezt a látogató böngészője - állítja be, de nem minden böngésző teszi ezt - meg, és nem mindig. + került a látogató. Ezt a látogató böngészőprogramja + állítja be, de ezt nem minden böngésző és nem mindig + teszi meg. </simpara> </listitem> </varlistentry> @@ -308,15 +303,15 @@ <term>$HTTP_USER_AGENT</term> <listitem> <simpara> - A <literal>User_Agent:</literal> HTTP fejléc értéke, - ha éppen van ilyen. Ez egy string, ami meghatározza + Az aktuális <literal>User_Agent:</literal> HTTP fejlécének tartalma, + ha van ilyen. Ez a string, amely meghatározza az oldal megtekintéséhez használt böngészőt, pl. <computeroutput>Mozilla/4.5 [en] (X11; U; Linux - 2.2.9 i586)</computeroutput>. Sok más dolog mellett - használhatod ezt az értéket a - <function>get_browser</function> fügvénnyel arra, - hogy az aktuális böngésző képességeire szabd - az oldal megjelenését. + 2.2.9 i586)</computeroutput>. Sok más mellett + ezt az értéket a fel lehet használni arra, hogy a + <function>get_browser</function> fügvénnyel + az aktuális böngésző képességeinek megfelelően lehessen + kialakítani az oldal megjelenését. </simpara> </listitem> </varlistentry> @@ -353,7 +348,7 @@ <term>$SERVER_ADMIN</term> <listitem> <simpara> - A SERVER_ADMIN szerver konfigurációs fájl direktíva + A SERVER_ADMIN a kiszolgáló konfigurációs fájl direktíva értéke (Apache alatt). Ha a szkript egy virtuális host-on fut, akkor ez a virtuális host-hoz rendelt érték. @@ -365,8 +360,8 @@ <term>$SERVER_PORT</term> <listitem> <simpara> - A webszerver gépen a szerver kommunikációjához - használt port száma. Alapbeállításban ez '80', + A kiszolgálógépen a kiszolgáló kommunikációjában + használt port száma. Alapértelmezés szerint ez a '80', de például SSL-t használva ez a biztonságos HTTP portnak a száma lesz. </simpara> @@ -377,10 +372,9 @@ <term>$SERVER_SIGNATURE</term> <listitem> <simpara> - Egy string, ami a szerver verzióját és a virtuális - host-ot tartalmazza, ha engedélyezett. Ez a szöveg - jelenik meg minden szerver által generált oldal - alján. + A kiszolgáló verziószámát és a virtuális + host-ot tartalmazó sztring, ha engedélyezett. + Ez a szöveg jelenik meg minden szerver által generált oldal alján. </simpara> </listitem> </varlistentry> @@ -392,7 +386,7 @@ Hasonló értéket tartalmaz, mint a SCRIPT_NAME, de CGI verzió esetén ez jobb lehet az önhivatkozó kérdőívek készítésekor, mert egyes szervereken - a SCRIPT_NAME tartalmazza a PHP meghívási utat is. + a SCRIPT_NAME tartalmazza a PHP bináris meghívási útvonalát is. </simpara> </listitem> </varlistentry> @@ -401,9 +395,9 @@ <term>$PATH_TRANSLATED</term> <listitem> <simpara> - A szkript fájlrendszernek megfelelő (nem a document root-hoz - viszonyított!) elérési útja. Ezt a szerver a virtuális->valós - átalakítással határozza meg. + A szkript a fájlrendszer szerinti (nem a document root-hoz + viszonyított!) elérési útja. Ezt a kiszolgáló a virtuális->valós + átalakítás után határozza meg. </simpara> </listitem> </varlistentry> @@ -412,9 +406,8 @@ <term>$SCRIPT_NAME</term> <listitem> <simpara> - Az aktuális szkript elérési útja (ahogy az az URL-ekben - megjelenik!). Hasznos a saját magukra mutató oldalakhoz - [pl. form-ok esetén]. + Az aktuális szkript elérési útja, ahogy az az URL-ben + megjelenik. Hasznos a saját magukra mutató oldalakhoz. </simpara> </listitem> </varlistentry> @@ -423,7 +416,7 @@ <term>$REQUEST_URI</term> <listitem> <simpara> - Az az URI, amivel ezt az oldalt lekérték. pl. '/index.html'. + Az az URI, amellyel az oldalt lekérték. pl. '/index.html'. </simpara> </listitem> </varlistentry> @@ -436,18 +429,17 @@ <title>Környezeti változók</title> <simpara> - Ezek a változók a PHP globális változói közé kerülnek - abból a környezetből, ahol a PHP feldolgozó fut. Számos - változót a shell szolgáltat, ami alatt a PHP fut, és - mivel más-más rendszerek más-más shell-eket használnak, - egy konkrét lista összeállítása lehetetlen. Légy szíves - nézz utána az előre definiált környezeti változóknak a - shell-ed dokumentációjában. + A PHP globális változói közé kerülnek a PHP feldolgozót + futtató környezet változói. Számos változót a shell + szolgáltat, ami alatt a PHP fut. Mivel más-más rendszerek + más-más shell-eket használnak, ezért egy pontos lista + összeállítása lehetetlen. A használt shell dokumentációjában + nézz utána az előre definiált környezeti változóknak! </simpara> <simpara> - Más környezeti változók, beleértve a CGI változókat is, + Más környezeti változók - beleértve a CGI változókat is - attól függően kerülnek be, hogy a PHP szerver - modulként fut, vagy CGI feldolgozóként. + modulként fut vagy CGI feldolgozóként. </simpara> </sect2> @@ -526,8 +518,7 @@ <term>$HTTP_COOKIE_VARS</term> <listitem> <simpara> - Egy asszociatív tömb, ami a HTTP cookie-kat (sütiket) - tartalmazza. + HTTP cookie-kat (sütiket) tartalmazó asszociatív tömb. </simpara> </listitem> </varlistentry> @@ -536,8 +527,7 @@ <term>$HTTP_GET_VARS</term> <listitem> <simpara> - Egy asszociatív tömb, ami a HTTP GET metódussal - kapott adatokat tartalmazza. + HTTP GET metódussal által szolgáltatott adatokat tartalmazó asszociatív tömb. </simpara> </listitem> </varlistentry> @@ -546,8 +536,7 @@ <term>$HTTP_POST_VARS</term> <listitem> <simpara> - Egy asszociatív tömb, ami a HTTP POST metódussal - kapott adatokat tartalmazza. + HTTP POST metódussal által szolgáltatott adatokat tartalmazó asszociatív tömb. </simpara> </listitem> </varlistentry> @@ -556,11 +545,10 @@ <term>$HTTP_POST_FILES</term> <listitem> <simpara> - Egy associatív tömb, ami a HTTP POST metódussal feltöltött - fájlokról tartalmaz információkat. Lásd a <link - linkend="features.file-upload.post-method">POST metódusú + A HTTP POST metódussal feltöltött fájlokról tartalmaz információkat, +associatív tömb. + Lásd a <link linkend="features.file-upload.post-method">POST metódusú feltöltések</link> című részt további információkért a - <varname>$HTTP_POST_FILES</varname> tartalmát illetően. + <varname>$HTTP_POST_FILES</varname> tartalmát és szerkezetét illetően. </simpara> <para> A <varname>$HTTP_POST_FILES</varname> a PHP 4.0.0 és @@ -573,8 +561,7 @@ <term>$HTTP_ENV_VARS</term> <listitem> <simpara> - Egy asszociatív tömb, ami a szülő környezet aktuális - változóit tartalmazza. + A szülő/futtató környezet aktuális változóit tartalmazó asszociatív tömb. </simpara> </listitem> </varlistentry> @@ -583,7 +570,7 @@ <term>$HTTP_SERVER_VARS</term> <listitem> <simpara> - Egy asszociatív tömb a HTTP szervertől érkező változókkal + a HTTP szervertől érkező változókkal feltöltött asszociatív tömb. Ezek a változók megfelelnek a fent említett Apache változóknak. </simpara> </listitem> @@ -600,13 +587,13 @@ <title>Változók hatásköre</title> <simpara> - [Ezt a fejezetet érdemes elolvasnod, még akkor is, ha profi + [Ezt a fejezetet érdemes elolvasni, még akkor is, ha profi vagy valamilyen programozási nyelvben, mert a PHP tartogat egy-két érdekes meglepetést...] </simpara> <simpara> - Egy változó hatásköre az a környezet, amiben a változó - definiált. A legtöbb esetben minden PHP változónak egy + A változó hatásköre az a környezet, amelyben a változó + definiált. A legtöbb esetben minden PHP változónak egyetlen hatásköre van. Ez az egyetlen hatáskör kiterjed az include és a require segítségével használt fájlokra is. Például: </simpara> @@ -620,11 +607,11 @@ </informalexample> <simpara> Itt az <varname>$a</varname> változó elérhető lesz az - include-olt <filename>b.inc</filename> szkriptben is. - Felhasználói függvényeken belül egy lokális - függvényhatáskör lép érvénybe. Minden egyes függvényen - belül használt változó csak azon a bizonyos függvényen - belülre van korlátozva. Például: + beillesztett <filename>b.inc</filename> szkriptben is. + A felhasználói függvényekkel a lokális függvényhatáskör + kerül bevezetésre. Alapértelmezés szerint minden, + függvényen belül használt változó ebbe a lokális + függvényhatáskörbe tartozik, például: </simpara> <informalexample> @@ -645,16 +632,15 @@ <simpara> Ez a szkript nem fog semmilyen kimenetet sem eredményezni, mivel az echo kifejezés az <varname>$a</varname> változónak - egy helyi változatára utal, és ehhez még nem került - hozzárendelésre érték abban a hatáskörben. Bizony, bizony, - ez egy "kicsit" különbözik a C nyelv filozófiájától, - ahol egy globális változó automatikusan elérhető - bármely függvényből, feltéve ha a függvényben újra - nem definiáltad azt a változót. Ez bizony problémák - forrása lehet, ha az ember véletlenül megváltoztat egy - globális változót. A PHP-ben a globális változókat - global kulcsszóval deklarálni kell a függvényekben, - ha szeretnénk őket a függvényben használni. Például: + egy helyi - függvényen belüli - változatára utal, és ebben + a hatáskörben ehhez nem rendeltek értéket. Ez valamelyest + különbözik a C nyelv filozófiájától, ahol a globális változók + automatikusan elérhetők bármely függvényből, feltéve + ha a függvényben újra nem definiáltad azt a változót. + Ez problémák forrása lehet, ha az ember véletlenül + megváltoztat egy globális változót. A PHP-ben a globális + változókat global kulcsszóval kell deklarálni a függvényekben, + például: </simpara> <informalexample> @@ -680,15 +666,13 @@ A fenti szkript kiírja, hogy "3". <varname>$a</varname> és <varname>$b</varname> global-ként való deklarálásával minden utalás ezekre a változókra a globális változót fogja érinteni. - Nincs megkötés arra, hogy hány globális változó hatáskörét - lehet "becsempészni" - a függvénybe. + Nincs megkötve, hány globális változót kezelhet egy függvény. </simpara> <simpara> Globális változók elérésének másik módja a PHP által definiált speciális <varname>$GLOBALS</varname> tömb használata. Az előbbi - példát így is meg lehetett volna írni: + példával egyenértékű megoldás: </simpara> <informalexample> @@ -709,17 +693,17 @@ </informalexample> <simpara> - A <varname>$GLOBALS</varname> tömb egy asszociatív tömb, ahol a - globális változó neve a kulcs, és a változó az értéke. + A <varname>$GLOBALS</varname> asszociatív tömb, ahol a + globális változó neve jelenti a kulcsot, és a változó értéke + a tömbelem értéke. </simpara> <simpara> - Egy másik fontos tulajdonsága a változók hatáskörének a - <emphasis>static</emphasis> (statikus) változó. Egy statikus + A változók hatáskörének másik fontos lehetősége a + <emphasis>static</emphasis> (statikus) változó. A statikus változó csak lokális hatáskörben él - egy függvényen - belül, de két függvényhívás közt nem felejti el az értékét - (pontosabban megfogalmazva a változó hatásköréből való - kilépés esetén is megmarad az értéke). Figyeld csak: + belül, de két függvényhívás közt nem veszti el az értékét, a + változó hatásköréből való kilépés esetén is megmarad az értéke: </simpara> <informalexample> @@ -736,14 +720,13 @@ </informalexample> <simpara> - Ez egy veszettül haszontalan hülye függvény, ami nem - csinál mást, mint minden meghívásakor <varname>$a</varname>-t + Ez nagyon haszontalan függvény, mivel nem csinál mást, + mint minden meghívásakor <varname>$a</varname>-t <literal>0</literal>-ra állítja, aztán kiírja a 0-t. Az <varname>$a</varname>++ teljesen felesleges, - mert amint vége a függvénynek, az <varname>$a</varname> - változót tároló bitek felveszik a néhai előnevet. - Ahhoz, hogy egy értelmes számolást tudjunk végezni, - és megmaradjon a számláló értéke, az <varname>$a</varname> + mert amint vége a függvény futásának az <varname>$a</varname> + változó megszűnik. Ahhoz, hogy ebből értelmes számlálófüggvény + legyen - megmaradjon a számláló értéke -, az <varname>$a</varname> változót statikusnak kell deklarálni: </simpara> @@ -761,23 +744,20 @@ </informalexample> <simpara> - Most, valahányszor meghívódik a Test() függvény, - kiírja <varname>$a</varname>-t, majd megnöveli eggyel. + Most már valahányszor meghívódik a Test() függvény, + kiírja <varname>$a</varname> értékét, majd azt megnöveli eggyel. </simpara> <simpara> - A statikus változók biztosítanak egy módot, hogy a - rekurzív függvényekkel bánjunk. Rekurzív az a - függvény, amely saját magát meghívja [persze jobb - esetben illik feltételhez kötni, különben a - szótárban nem úgy fog szerepelni, hogy Rekurzió: - ld. rekurzió, hanem úgy, hogy Rekurzió = Stack - overflow]. Szóval csak óvatosan azokkal a rekurzív - függvényekkel, nehogy végtelen rekurzióba kerüljünk. Ezért - kell a feltétel, mert az fogja leállítani a - rekurziót. A következő függvény rekurzívan - elszámol 10-ig a statikus <varname>$count</varname> változó segítségével. - [Ki ne felejtsd a static kulcsszót, mert akkor nagy baj lesz!]: + A statikus változókat a rekurzív függvények megvalósításában + is felhasználhatjuk. Rekurzívnak nevezzük azt a függvényt, + amely saját magát hívja meg. Ezt természetesen feltételhez kell kötni, + nehogy végtelen rekurzióba kerüljön a vezérlés és meghatározatlan időre + a függvényen belül csapdába esik. Mindig meg kell bizonyosodni arról, hogy + megfelelő feltétel rendelkezésre áll a rekurzió befejezéséhez. + A következő függvény rekurzívan elszámol 10-ig a statikus + <varname>$count</varname> változó segítségével: + [A static kulcsszó nagyon fontos!] </simpara> <informalexample> @@ -804,9 +784,9 @@ <title>Változó változók</title> <simpara> - Néha kényelmes változó változók használata. Ez egy olyan változó, - aminek a nevét dinamikusan lehet beállítani. Egy normál változót - így állítunk be: + Néha kényelmes változó változók használata. Ez olyan változó jelent, + amelynek a nevét dinamikusan lehet beállítani. A normál változót így + adunk értéket: </simpara> <informalexample> @@ -818,25 +798,25 @@ </informalexample> <simpara> - Egy változó változó veszi egy változó értékét, és egy másik + A változó változó veszi egy változó értékét, amelyet egy másik változó értékének tekinti. A fenti példában a <emphasis>hello</emphasis>, egy változó neveként használható, - ha $a elé még egy $-t teszünk + a $a elé még egy $-t írva. </simpara> <informalexample> <programlisting role="php"> <![CDATA[ -$$a = "world"; +$$a = "világ"; ]]> </programlisting> </informalexample> <simpara> - Ezen a ponton már két változó van a PHP szimbólumtáblájában: - <varname>$a</varname>, melynek tartalma "hello", - és <varname>$hello</varname>, aminek a tartalma - "világ". Ennélfogva a következő kódsor: + Ekkor már két változó van a PHP szimbólumtáblájában: + <varname>$a</varname>, amelynek tartalma "hello", + és <varname>$hello</varname>, amelynek a tartalma + "világ". Ennélfogva a következő programsor: </simpara> <informalexample> @@ -848,7 +828,7 @@ </informalexample> <simpara> - pontosan ugyanazt csinálja, mintha azt írtuk volna, hogy: + pontosan ugyanazt csinálja, mintha ezt írtuk volna: </simpara> <informalexample> @@ -860,18 +840,18 @@ </informalexample> <simpara> - Azaz mindkettő azt írja ki, hogy: <computeroutput>hello világ</computeroutput>. + Mindkettő kiírja, hogy: <computeroutput>hello világ</computeroutput>. </simpara> <simpara> - Annak érdekében, hogy változó változókat tömbként használjuk, - fel kell oldanunk egy kétértelműséget. Ez pedig az, hogy ha - azt írjuk, hogy <varname>$$a[1]</varname>, akkor kellene tudni - a szkriptnek, hogy mi most <varname>$a[1]</varname>-et, mint - változót szeretnénk használni, vagy <varname>$$a</varname>-t, - mint változót szeretnénk, és az ő [1]-es indexét - használni. Ezért az első szintaxisa: <varname>${$a[1]}</varname> - és a másodiké: <varname>${$a}[1]</varname>. + Annak érdekében, hogy változó változókat tömbökkel együtt is használhassuk, + fel kell oldani a következő kétértelműséget. A <varname>$$a[1]</varname> + kifejezés kiértékelésekor a feldolgozónak tudnia kell, hogy ez a + <varname>$a[1]</varname> értékét tekintse a hivatkozott változó neveként, + vagy <varname>$$a</varname>-t - és ekkor és ennek a tömbnek 1. indexű + elemére történt a hivatkozás. + Az első esetben <varname>${$a[1]}</varname>, + míg a másodikban <varname>${$a}[1]</varname> írandó. </simpara> </sect1> @@ -880,12 +860,12 @@ <title>Változók a PHP-n kívülről</title> <sect2 id="language.variables.external.form"> - <title>HTML Formok (GET és POST)</title> + <title>HTML űrlapok (GET és POST)</title> <simpara> - Amikor egy formot elküldünk egy PHP sciptnek, a form összes - változója a PHP segítségével automatikusan elérhetővé - válik a szkript számára. Ha a <link linkend="ini.track-vars">track_vars</link> + Egy HTML űrlap (form) elküldésével az űrlap összes beviteli mezőjének + értéke automatikusan elérhetővé válik a szkript számára a PHP segítségével. + Ha a <link linkend="ini.track-vars">track_vars</link> szolgáltatás be van kapcsolva, ezek a változók a <varname>$HTTP_POST_VARS</varname>, <varname>$HTTP_GET_VARS</varname>, és/vagy @@ -901,11 +881,11 @@ <para> <example> - <title>Egyszerű form változó</title> + <title>Egyszerű űrlap változó példája</title> <programlisting role="php"> <![CDATA[ <form action="foo.php" method="post"> - Name: <input type="text" name="username"><br> + Name: <input type="text" name="usernev"><br> <input type="submit"> </form> ]]> @@ -914,40 +894,41 @@ </para> <para> - Ha elküldjük a fenti űrlapot, a PHP létrehozza a - <varname>$HTTP_POST_VARS['username']</varname> változót. + Ha elküldjük a fenti űrlapot, akkor a PHP létrehozza a + <varname>$HTTP_POST_VARS['usernev']</varname> változót. Ha a <link linkend="ini.register-globals">register_globals</link> - beállítás aktív, ez a változó elérhető lesz - <varname>$username</varname> globális változóként is. + beállítás aktív, akkor ez a változó elérhető lesz + <varname>$usernev</varname> globális változóként is. </para> <note> <para> A <link linkend="ini.magic-quotes-gpc">magic_quotes_gpc</link> - konfigurációs beállítás hatással van a Get, Post és Cookie értékeire. Ha - be van kapcsolva, akkor a (Ez a "PHP", biz'a!) automágikusan :) - (Ez a \"PHP\", biz\'a!) lesz, hogy megkönnyítse az adatbázisba írást. - Lásd még: <function>addslashes</function>, <function>stripslashes</function> és + konfigurációs beállítás hatással van a GET, POST és COOKIE metódusokkal + kapott értékekre. Bekapcsolva a (Ez a "PHP", biz'a!) szövegből + automágikusan (Ez a \"PHP\", biz\'a!) lesz, hogy megkönnyítse az adatbázisba + írást. Lásd még: <function>addslashes</function>, + <function>stripslashes</function> és <link linkend="ini.magic-quotes-sybase">magic_quotes_sybase</link>! </para> </note> <simpara> - A PHP a csoportosított form változókból tömböket származtat. + A PHP megérti és kezeli a tömbökbe rendezett űrlapváltozókat. (Lásd <link linkend="faq.html">related faq</link>!) - Például hasznos lehet csoportosítani az összetartozó - változókat, vagy az olyan form elemeket, ahol több lehetőség - közül nem csak egy választható. + Hasznos lehet csoportosítani az összetartozó változókat, vagy + az olyan űrlapelemeket, ahol több lehetőség közül nem csak egy + választható. </simpara> <para> <example> - <title>Összetettebb form változók</title> + <title>Összetettebb űrlapváltozók</title> <programlisting role="php"> <![CDATA[ <form action="array.php" method="post"> - Name: <input type="text" name="personal[name]"><br> - Email: <input type="text" name="personal[email]"><br> - Beer: <br> + Név: <input type="text" name="szemelyes[nev]"><br> + Email: <input type="text" name="szemelyes[email]"><br> + Sör: <br> <select multiple name="ital[]"> <option value="warthog">Warthog <option value="guinness">Guinness @@ -961,7 +942,7 @@ </para> <para> - PHP 3-ban ilyen módon csak egydimenziós tömbök hozhatóak létre, + PHP 3-ban ilyen módon csak egydimenziós tömbök hozhatók létre, míg PHP 4-ben nincs ilyen korlátozás. </para> @@ -969,74 +950,74 @@ <title>IMAGE SUBMIT változónevek</title> <simpara> - Form elküldésekor megoldható, hogy gomb helyett képet használunk - egy ilyesféle tag segítségével: + Az űrlap elküldésekor megoldható, hogy gomb helyett képet használunk + ilyesféle jelölés segítségével: </simpara> <informalexample> <programlisting role="php"> <![CDATA[ -<input type="image" src="image.gif" name="sub"> +<input type="image" src="image.gif" name="elkuld"> ]]> </programlisting> </informalexample> <simpara> - Ha a felhasználó a képre kattint, az elküldött form adatok, amik - a szerverhez eljutnak, két speciális változót tartalmaznak: sub_x-et - és sub_y-t. Ezek tartalmazzák a kattintás képen belüli koordinátáit. - A tapasztaltabbak biztos megjegyeznék, hogy a változónevek, amiket - a server megkap, nem is aláhúzást, hanem pontot tartalmaznak, de - a PHP a pontot automatikusan aláhúzássá konvertálja. + Ha a felhasználó a képre kattint, a kiszolgálóra a következő két + változó jut el: elkuld_x-et és elkuld_y-t. Ezek tartalmazzák a + kattintás képen belüli koordinátáit. A tapasztaltabbak biztos + megjegyeznék, hogy a változónevek nem aláhúzást, hanem pontot + tartalmaznak, de a PHP a pontot automatikusan aláhúzássá konvertálja. </simpara> </sect3> </sect2> <sect2 id="language.variables.external.cookies"> - <title>HTTP cookie-k</title> + <title>HTTP sütik (cookie)</title> <simpara> A PHP támogatja a <ulink url="&spec.cookies;">Netscape specifikációja</ulink> által - definiált HTTP cookie-kat. A cookie egy mechanizmus, ami távoli + definiált HTTP sütiket. A süti olyan mechanizmus, amely a távoli böngészőn tesz lehetővé adattárolást, és így lehetővé teszi a - visszatérő felhasználók azonosítását. Cookie-kat a + visszatérő felhasználók azonosítását. A sütiket a <function>setcookie</function> függvénnyel lehet beállítani. - A cookie-k a HTTP fejléc részei, így a SetCookie függvényt + A sütik a HTTP fejléc részei, így a SetCookie függvényt bármilyen kimenet generálása előtt kell meghívni. Ugyanezt a megkötést kell betartani a <function>header</function> - függvénnyel. Bármilyen cookie, amit küldenek neked a klienstől, - automatikusan egy PHP változóba kerül, úgy, mint a GET és a POST - metódus adatai. + függvénnyel. Bármilyen süti, amelyet a klienstől érkezik, + automatikusan egy PHP változóba kerül, úgy, mint a GET és + a POST metódus adatai. </simpara> <simpara> - Ha több adatot akarsz rendelni egy cookie-hoz, egyszerűen rakj + Ha több adatot akarsz rendelni egy sütihez, egyszerűen rakj <emphasis>[]</emphasis>-t a cookie neve után. Például: </simpara> <informalexample> <programlisting role="php"> <![CDATA[ -setcookie("MyCookie[]", "Testing", time()+3600); +setcookie("EnSutim[]", "tesztelem", time()+3600); ]]> </programlisting> </informalexample> <simpara> - Vigyázz, mert egy cookie felülírja az előző azonos cookie-t, hacsak - nem különbözik a path vagy a domain. Így egy bevásárlókocsiféleséghez - jó odarakni egy számlálót, hogy megkerüljük a problémát. + Vigyázz, mert a süti felülírja az előző azonos nevű sütit, hacsak + nem különbözik a path vagy a domain. Így pl. egy + bevásárlókocsi megírásakor jó egy számlálót is elhelyezni, hogy + elkerüljük a problémát. </simpara> <example> <title>SetCookie Példa</title> <programlisting role="php"> <![CDATA[ -$Count++; -setcookie("Count", $Count, time()+3600); -setcookie("Cart[$Count]", $item, time()+3600); +$Szamlalo++; +setcookie("Szamlalo", $Szamlalo, time()+3600); +setcookie("Kocsi[$Szamlalo]", $elem, time()+3600); ]]> </programlisting> </example> @@ -1048,7 +1029,7 @@ <para> A PHP automatikusan létrehozza az elérhető környezeti változókat, - mint mezei PHP változókat. + mint egyszerű PHP változókat. <informalexample> <programlisting role="php"> @@ -1075,17 +1056,16 @@ <para> Általában a PHP nem változtatja meg a változók neveit, amikor a szkript megkapja őket. A pont viszont nem érvényes karakter - egy PHP változóneven belül. Az ok megértéséért nézd csak: + egy PHP változóneven belül. Az ok megértéséért nézd a: <programlisting role="php"> <![CDATA[ $varname.ext; /* érvénytelen változónév */ ]]> </programlisting> - Most a parser lát egy változót, amit <varname>$varname</varname>-nek - hívnak, amit egy stringösszefűző operátor követ, majd egy - csupasz string (idézőjel nélküli string, ami nem egyezik - semmilyen ismert kulcsszóval, vagy lefoglalt kulcsszóval) - az ext. Ez nem a kívánt eredmény. + Most az elemző lát egy <varname>$varname</varname> nevű változót, + amelyet stringösszefűző operátor (.) követ, majd egy csupasz sztring: + az ext - idézőjel nélküli string, amely nem egyezik semmilyen ismert vagy + lefoglalt kulcsszóval. Ez nyilván nem a kívánt eredményt adná. </para> <para>