cvs: phpdoc /hu/functions var.xml

From: Date: Sat, 30 Mar 2002 16:47:57 +0000
Subject: cvs: phpdoc /hu/functions var.xml
Groups: php.doc 
Request: Send a blank email to phpdoc+get-969343865@lists.php.net to get a copy of this message
goba Sat Mar 30 11:47:57 2002 EDT Modified files: /phpdoc/hu/functions var.xml Log: Some new functions added and translated

Index: phpdoc/hu/functions/var.xml diff -u phpdoc/hu/functions/var.xml:1.11 phpdoc/hu/functions/var.xml:1.12 --- phpdoc/hu/functions/var.xml:1.11 Sat Mar 30 09:32:13 2002 +++ phpdoc/hu/functions/var.xml Sat Mar 30 11:47:56 2002 @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="iso-8859-2"?> -<!-- EN-Revision: 101 Maintainer: goba Status: updated till print_r --> +<!-- EN-Revision: 102 Maintainer: goba Status: updated till print_r --> <reference id="ref.variables"> <title>Változókkal kapcsolatos függvények</title> @@ -840,7 +840,7 @@ <refnamediv> <refname>print_r</refname> <refpurpose> - Ember számára olvasható információt ad egy változóról. + Ember számára olvasható információ egy változóról </refpurpose> </refnamediv> <refsect1> @@ -851,70 +851,214 @@ </methodsynopsis> <simpara> Ez a függvény egy ember számára olvasható formában ad vissza - információt a megadott változótól. Ha egy string, egész - vagy lebegõpontos paramétert kap, maga az érték íródik ki. Ha tömböt kap, - az elemek kulcs-érték párokként íródnak ki. Hasonlóan viselkedik - a print_r objektumok esetében is. + információt a megadott változóról. Ha egy <type>string</type>, + <type>integer</type> vagy <type>float</type> típusú értéket + kap, magát az értéket írja ki. Ha tömböt kap, az elemek + kulcs-érték párjait írja ki. Hasonlóan viselkedik + objektumok esetében is. </simpara> <simpara> - Hasonlítsd össze a <function>print_r</function>-t és a - <function>var_dump</function>-ot. + A <function>print_r</function> a tömb belsõ mutatóját + a tömb végére mozgatja. Használd a <function>reset</function> + függvényt, ha elõre kell mozgatnod a mutatót. </simpara> + &tip.ob-capture; <para> <informalexample> <programlisting role="php"> <![CDATA[ <?php -$a = array (1, 2, array ("a", "b", "c")); -print_r ($a); + $tomb = array ('a' => 'alma', 'b' => 'banán', 'c' => array ('x','y','z')); + print_r($tomb); ?> ]]> </programlisting> </informalexample> </para> - <warning> - <para> - Ez a függvény a 'végtelenségig' futni fog, ha egy direkt, - vagy indirekt magára mutató tömböt vagy objektumot adsz - át paraméterül. Ez például igaz a <literal>print_r($GLOBALS)</literal>, - hívásra, mivel a <literal>$GLOBALS</literal> magában egy globális + <para> + Kimenete: + <screen> +<![CDATA[ +<pre> +Array +( + [a] => alma + [b] => banán + [c] => Array + ( + [0] => x + [1] => y + [2] => z + ) +) +</pre> +]]> + </screen> + </para> + <note> + <simpara> + Ez a függvény a PHP 4.0.4 verzió elõtt a 'végtelenségig' futott, + ha egy direkt, vagy indirekt magára mutató tömböt vagy objektumot + adtál át paraméterül. Egy példa erre a <literal>print_r($GLOBALS)</literal>, + hívás, mivel a <literal>$GLOBALS</literal> magában egy globális változó, és így magára is tartalmaz referenciát. - </para> - </warning> + </simpara> + </note> + <simpara> + Lásd még <function>ob_start</function>, <function>var_dump</function>, + és <function>var_export</function>. + </simpara> + </refsect1> + </refentry> + + <refentry id="function.serialize"> + <refnamediv> + <refname>serialize</refname> + <refpurpose> + Karaktersorozat elõállítása egy értékbõl + </refpurpose> + </refnamediv> + <refsect1> + <title>Leírás</title> + <methodsynopsis> + <type>string</type><methodname>serialize</methodname> + <methodparam><type>mixed</type><parameter>value</parameter></methodparam> + </methodsynopsis> + <simpara> + A <function>serialize</function> egy karaktersorozattal tér + vissza, ami a <parameter>value</parameter> paraméterben megadott + érték karaktersorozatba kódolt megfelelõje. Így bárhol tárolható. + </simpara> + <simpara> + Ez a függvény hasznos PHP értékek tárolására és továbbítására + anélkül, hogy a szerkezetük és/vagy típusuk elveszne. + </simpara> + <simpara> + Ha ismét PHP értékbe szeretnéd tenni a "szerializált" + karaktersorozatot, használd az <function>unserialize</function> + függvényt. A <function>serialize</function> minden típust + kezel a <type>resource</type> típus kivételével. Szerializálhatsz + akár olyan tömböket is, amik magukra tartalmaznak referenciát. + A referenciák, amiket a tömbben/objektumban tárolsz, szintén + bekerülnek a kódolt karaktersorozatba. + </simpara> + <note> + <para> + A PHP 3-ban az objektum tulajdonságok szerializálódnak, de + a metódusok elvesznek. A PHP 4-esben ilyen probléma nem lép + fel. Lásd az <link + linkend="language.oop.serialization">objektumok szerializációja</link> + részt a <link linkend="language.oop">Osztályok, objektumok</link> + címû fejezetben. + </para> + </note> + <para> + <example> + <title><function>serialize</function> példa</title> + <programlisting role="php"> +<![CDATA[ +// A $munkamenet_adat egy többdimenziós tömb, az aktuális +// felhasználó munkamenet adataival. A serialize()-t használjuk +// az adatok adatbázisban történõ tárolására a kérés végén. + +$conn = odbc_connect ("webdb", "php", "csirke"); +$stmt = odbc_prepare ($conn, + "UPDATE munkamenetek SET adat = ? WHERE id = ?"); +$sqladat = array (serialize($munkamenet_adat), $PHP_AUTH_USER); +if (!odbc_execute ($stmt, &$sqladat)) { + $stmt = odbc_prepare($conn, + "INSERT INTO munkamenetek (id, adat) VALUES(?, ?)"); + if (!odbc_execute($stmt, &$sqladat)) { + /* Valami nem jött össze, hibakezelés */ + } +} +]]> + </programlisting> + </example> + </para> + <para> + Lásd még <function>unserialize</function>. + </para> </refsect1> </refentry> <refentry id="function.settype"> <refnamediv> <refname>settype</refname> - <refpurpose>Beállítja egy változó típusát.</refpurpose> + <refpurpose>Változó típusának beállítása</refpurpose> </refnamediv> <refsect1> <title>Leírás</title> <methodsynopsis> - <type>int</type><methodname>settype</methodname> - <methodparam><type>string</type><parameter>var</parameter></methodparam> + <type>bool</type><methodname>settype</methodname> + <methodparam><type>mixed</type><parameter>var</parameter></methodparam> <methodparam><type>string</type><parameter>type</parameter></methodparam> </methodsynopsis> <para> Beállítja a <parameter>var</parameter> változó típusát - <parameter>type</parameter>-ra. + <parameter>type</parameter> típusra. </para> <para> Lehetséges <parameter>type</parameter> értékek: <itemizedlist> - <listitem><simpara>&quot;integer&quot;</simpara></listitem> - <listitem><simpara>&quot;double&quot;</simpara></listitem> - <listitem><simpara>&quot;string&quot;</simpara></listitem> - <listitem><simpara>&quot;array&quot;</simpara></listitem> - <listitem><simpara>&quot;object&quot;</simpara></listitem> + <listitem> + <simpara> + "boolean" (vagy a PHP 4.2.0 óta "bool") + </simpara> + </listitem> + <listitem> + <simpara> + "integer" (vagy a PHP 4.2.0 óta "int") + </simpara> + </listitem> + <listitem> + <simpara> + "float" (csak a PHP 4.2.0 óta, korábban "double") + </simpara> + </listitem> + <listitem> + <simpara> + "string" + </simpara> + </listitem> + <listitem> + <simpara> + "array" + </simpara> + </listitem> + <listitem> + <simpara> + "object" + </simpara> + </listitem> + <listitem> + <simpara> + "null" (a PHP 4.0.8 óta) + </simpara> + </listitem> </itemizedlist> </para> <para> - Igazat ad vissza sikeresség esetén, hamisat egyébként. + &true; értéket ad siker esetén, &false; értéket egyébként. </para> <para> - Lásd még: <function>gettype</function>. + <example> + <title><function>settype</function> példa</title> + <programlisting role="php"> +<![CDATA[ +$ize = "5valami"; // string +$valami = true; // boolean + +settype($ize, "integer"); // $ize most 5 (integer) +settype($valami, "string"); // $valami most "1" (string) +]]> + </programlisting> + </example> + </para> + <para> + Lásd még <function>gettype</function>, + <link linkend="language.types.typecasting">típus átalakítás</link> és + <link linkend="language.types.type-juggling">bûvészkedés a típusokkal</link>. </para> </refsect1> </refentry> @@ -922,7 +1066,7 @@ <refentry id="function.strval"> <refnamediv> <refname>strval</refname> - <refpurpose>Visszaadja a szöveges értékét egy változónak.</refpurpose> + <refpurpose>Egy változó karaktersorozat értékét adja vissza</refpurpose> </refnamediv> <refsect1> <title>Leírás</title> @@ -931,17 +1075,116 @@ <methodparam><type>mixed</type><parameter>var</parameter></methodparam> </methodsynopsis> <simpara> - Visszaadja a szöveges értékét a <parameter>var</parameter> változónak. + Visszaadja a karaktersorozattá alakított értékét a + <parameter>var</parameter> paraméterben megadott változónak. + Lásd a <type>string</type> típus dokumentációját az átalakítás + leírásához. </simpara> <simpara> - A <parameter>var</parameter> bármilyen skalár típus lehet. Azonban nem - alkalmazhatod az <function>strval</function>-t tömbökre vagy objektumokra. + A <parameter>var</parameter> bármilyen skalár típus lehet. Nem + alkalmazhatod azonban az <function>strval</function> függvényt + tömbökön vagy objektumokon. </simpara> <simpara> - Lásd még: <function>doubleval</function>, + Lásd még <function>floatval</function>, <function>intval</function>, <function>settype</function> és - <link linkend="language.types.type-juggling">Bûvészkedés a típusokkal</link>. + <link linkend="language.types.type-juggling">bûvészkedés a típusokkal</link>. </simpara> + </refsect1> + </refentry> + + <refentry id="function.unserialize"> + <refnamediv> + <refname>unserialize</refname> + <refpurpose> + PHP értéket állít elõ egy kódolt karaktersorozatból + </refpurpose> + </refnamediv> + <refsect1> + <title>Leírás</title> + <methodsynopsis> + <type>mixed</type><methodname>unserialize</methodname> + <methodparam><type>string</type><parameter>str</parameter></methodparam> + </methodsynopsis> + <simpara> + Az <function>unserialize</function> egy szerializált értéket vár, + (lásd a <function>serialize</function> függvényt) és visszaalakítja + PHP értékké azt. Az átalakított értéket adja vissza, ami lehet + <type>integer</type>, <type>float</type>, <type>string</type>, + <type>array</type> vagy <type>object</type> típusú. + </simpara> + <note> + <para> + Definiálhatsz egy callback függvényt, amit a PHP akkor + hív meg, ha egy nemlétezõ osztályból kell példányt + létrehoznia a deszerializáció során. Erre akkor lehet + szükség, ha nem szeretnél egy tökéletlen "__PHP_Incomplete_Class" + objektumot kapni. Használd a &php.ini;, <function>ini_set</function> + vagy .htaccess segítségével beállítható 'unserialize_callback_func' + értéket a függvény beállítására. Minden alkalommal, amikor + egy nem definiált osztályból kell példányt létrehozni, ezt + a függvényt fogja a PHP meghívni. Ha ki szeretnéd kapcsolni ezt + a szolgáltatást, állítsd üresre ezt a beállítást. + </para> + </note> + <para> + <example> + <title>unserialize_callback_func példa</title> + <programlisting role="php"> +<![CDATA[ +$szerializalt_obj='O:1:"a":1:{s:5:"value";s:3:"100";}'; + +ini_set('unserialize_callback_func','mycallback'); // saját callback függvény + +function mycallback($osztaly_neve) { + // Itt be tudod tölteni azt a külsõ állományt, ami az + // osztály definícióját tartalmazza. Az osztály nevét + // kapod paraméterül, az alapján dönthetsz. +} +]]> + </programlisting> + </example> + </para> + <note> + <para> + A PHP 3-ban az objektum tulajdonságok szerializálódnak, de + a metódusok elvesznek. A PHP 4-esben ilyen probléma nem lép + fel. Lásd az <link + linkend="language.oop.serialization">objektumok szerializációja</link> + részt a <link linkend="language.oop">Osztályok, objektumok</link> + címû fejezetben. + </para> + </note> + <para> + <example> + <title><function>unserialize</function> példa</title> + <programlisting role="php"> +<![CDATA[ +// Itt az unserialize() függvényt használjuk, miután az adatbázisból +// lekérdeztük a munkamenet adatot a $munkamenet_adat változóba. +// Ez a példa kiegészíti a serialize() példáját. + +$conn = odbc_connect ("webdb", "php", "csirke"); +$stmt = odbc_prepare ($conn, "SELECT adat FROM munkamenetek WHERE id = ?"); +$sqladat = array ($PHP_AUTH_USER); +if (!odbc_execute ($stmt, &$sqladat) || !odbc_fetch_into ($stmt, &$tmp)) { + // Ha az execute() vagy a fetch() hibás, üres tömböt veszünk + $munkamenet_adat = array(); +} else { + // Most már a deszerializált adatokat a $tmp[0]-ban találjuk + $munkamenet_adat = unserialize($tmp[0]); + if (!is_array($munkamenet_adat)) { + // Valami rosszul ment, üres tömböt veszünk + $munkamenet_adat = array(); + } +} +]]> + </programlisting> + </example> + </para> + <para> + Lásd még <function>serialize</function>. + </para> </refsect1> </refentry>
« previous php.doc (#969343865) next »