goba            Tue Jul 10 12:12:12 2001 EDT

  Modified files:              
    /phpdoc/hu  Translators 
    /phpdoc/hu/language types.xml 
  Log:
  Partially updated, still wont build...
  
  The diff between our translated 1.16 and
  the current 1.35 is 1800 lines :(( 
  I am currently at line 457. More to
  come, but not today...
  
  
  
Index: phpdoc/hu/Translators
diff -u phpdoc/hu/Translators:1.32 phpdoc/hu/Translators:1.33
--- phpdoc/hu/Translators:1.32  Tue Jul 10 09:49:38 2001
+++ phpdoc/hu/Translators       Tue Jul 10 12:12:11 2001
@@ -169,7 +169,7 @@
 oop.xml                     Kontra Gergely  1.5   ++
 operators.xml               Kontra Gergely  1.22
 references.xml              Kontra Gergely  [undrcon]
-types.xml                   Kontra Gergely  1.16  ++
+types.xml                   Kontra Gergely  1.16  ++  (partially updated)
 variables.xml               Kontra Gergely  1.15
 -------- pear ---------------------------------------------------------------
 about.xml
Index: phpdoc/hu/language/types.xml
diff -u phpdoc/hu/language/types.xml:1.6 phpdoc/hu/language/types.xml:1.7
--- phpdoc/hu/language/types.xml:1.6    Fri Jan 26 13:10:52 2001
+++ phpdoc/hu/language/types.xml        Tue Jul 10 12:12:12 2001
@@ -1,41 +1,97 @@
  <chapter id="language.types">
   <title>Típusok</title>
 
-  <para>
-   A PHP a következő típusokat támogatja:
+  <sect1 id="language.types.intro">
+  <title>Bevezető</title>
+  
+  <simpara>
+   A PHP nyolc primitív típust támogat.
+  </simpara>
+  
+   <para>
+   A négy skalár típus:
+
    <itemizedlist>
+
     <listitem>
      <simpara>
-      <link linkend="language.types.array">tömb</link>
+      <link linkend="language.types.boolean">boolean (logikai)</link>
      </simpara>
     </listitem>
+
     <listitem>
      <simpara>
-      <link linkend="language.types.double">lebegőpontos szám
-      </link>
+      <link linkend="language.types.integer">integer (egész szám)</link>
      </simpara>
     </listitem>
-    <listitem>
-     <simpara>
-      <link linkend="language.types.integer">egész</link>
+
+     <listitem>
+      <simpara>
+      <link linkend="language.types.double">floating-point number
+      (double, float, lebegőpontos szám)</link>
      </simpara>
     </listitem>
+
     <listitem>
      <simpara>
-      <link linkend="language.types.object">objektum</link>
+      <link linkend="language.types.string">string (karakterlánc,
+      karaktersorozat)</link>
      </simpara>
     </listitem>
+
+   </itemizedlist>
+
+   A két összetett típus:
+
+   <itemizedlist>
+
     <listitem>
      <simpara>
-      <link linkend="language.types.string">string</link>
+      <link linkend="language.types.array">array (tömb)</link>
+      </simpara>
+     </listitem>
+
+     <listitem>
+      <simpara>
+       <link linkend="language.types.object">object (objektum)</link>
+      </simpara>
+     </listitem>
+
+   </itemizedlist>
+
+   Végül két speciális típus:
+
+   <itemizedlist>
+
+     <listitem>
+      <simpara>
+      <link linkend="language.types.resource">resource (erőforrás)</link>
+      </simpara>
+     </listitem>
+
+    <listitem>
+     <simpara>
+      <link linkend="language.types.null">&null;</link>
      </simpara>
     </listitem>
+
    </itemizedlist>
   </para>
+  
+  <note>
+   <simpara>
+    Ebben a kézikönyvben gyakran találkozhatsz
+    <literal>mixed</literal> paraméterekkel is. 
+    Ez a kvázi-típus csak a dokumentációkban létezik,
+    annak jelölésére szolgál, hogy többféle lehetőség
+    adott arra a paraméterre.
+   </simpara>
+  </note>
+
   <simpara>
-   A változó típusát rendszerint nem a programozó határozza meg
-   [na azért van beleszólása...], hanem, a PHP futási időben határozza
-   meg a változó környezetétől függően.
+   A változó típusát rendszerint nem a programozó adja meg
+   [na azért van beleszólása...], hanem a PHP futási időben
+   határozza meg a változó környezetétől függően.
   </simpara>
   <simpara>
    Ha egy változó típusát egy adott típusra kell konvertálnunk, 
@@ -51,22 +107,305 @@
    a típusokkal</link> című részt.
   </simpara>
 
-  <sect1 id="language.types.integer">
-   <title>Egészek</title>
-   <para>
-    Egészeket az alábbi szintaxis bármelyikét használva hozhatunk létre:
-    <informalexample>
-     <programlisting role="php">
-$a = 1234; # decimális szám
-$a = -123; # egy negatív szám
-$a = 0123; # oktális szám (egyenértékű 83 decimálissal)
-$a = 0x12; # hexadecimális szám (egyenértékű 18 decimálissal)
-     </programlisting>
-    </informalexample>
-    Az egész számok mérete platformfüggő, de a maximális
-    érték szokásosan 2 billió (32 bites előjeles egész).
-   </para>
   </sect1>
+   
+  <sect1 id="language.types.boolean">
+   <title>Logikai adattípus</title>
+    
+    <simpara>
+     Ez a legegyszerűbb típus. Egy <type>boolean</type>
+     igazságértéket fejez ki. Lehet vagy &true; (igaz),
+     vagy &false; (hamis). 
+    </simpara>
+    <note>
+     <simpara>
+      A logikai adattípus a PHP 4-esben került bevezetésre.
+     </simpara>
+    </note>
+
+    <sect2 id="language.types.boolean.syntax">
+     <title>Szintaxis</title>
+     <para>
+      Egy logikai érték megadásához használhatod a &true; 
+      vagy &false; szavakat, szükség szerint. Egyik jelentése
+      sem függ a kis- és nagybetűs írásmódtól.
+      <informalexample>
+       <programlisting role="php">
+$igaz = True; // a logikai igaz értéket adjuk az $igaz változónak
+       </programlisting>
+      </informalexample>
+     </para>
+     <para>
+      Tipikus valamilyen
+      <link linkend="language.operators">operátor</link>
+      használatakor kapsz <type>boolean</type> típusú értéket, amit
+      egy <link linkend="control-structures">vezérlési
+      szerkezetben</link> fel tudz használni.
+      <informalexample>
+       <programlisting role="php">
+if ($akcio == "verzio_kiirasa") // a == <link 
+linkend="language.operators">operátor</link> <type>boolean</type> értékkel tér vissza
+{
+    echo "Ez az 1.23-as változat";
+}
+
+// ez nem szükséges
+if ($elvalaszto_kiirasa == true)
+{
+    echo "&lt;hr&gt;\n";
+}
+
+// mivel egyszerűen ez is működik
+if ($elvalaszto_kiirasa)
+{
+    echo "&lt;hr&gt;\n";
+}
+       </programlisting>
+      </informalexample>
+     </para>
+    </sect2>
+
+    <sect2 id="language.types.boolean.casting">
+     <title>Logikai értékké alakítás</title>
+      <simpara>
+       Ha kifejezetten <type>boolean</type> típusúvá szeretnél
+       alakítani egy értéket, használd a <literal>(bool)</literal>
+       vagy a <literal>(boolean)</literal> típusátalakítást.
+       A legtöbb esetben azonban nem kell ezt alkalmaznod, mivel
+       az érték automatikusan átalakul, ha egy operátor, függvény,
+       vagy vezérlési szerkezet <type>boolean</type> típusú
+       argumentumot vár.
+      </simpara>
+      <simpara>
+       Lásd még a <link linkend="language.types.type-juggling">Bűvészkedés
+       a típusokkal</link> című részt.
+      </simpara>
+      
+      <para>
+       Amikor <type>boolean</type> típusúvá kell alakítani egy
+       értéket, az alábbiak &false; értéket adnak:
+  
+       <itemizedlist>
+        <listitem>
+         <simpara>a <link linkend="language.types.boolean">boolean</link> 
+          típusú &false; </simpara>
+        </listitem>
+        <listitem>
+         <simpara>az <link linkend="language.types.integer">integer (egész)</link
+         >típusú 0 (nulla) </simpara>
+        </listitem>
+        <listitem>
+         <simpara>a <link linkend="language.types.double">double 
+(lebegőpontos)</link> 
+         0.0 (nulla) </simpara>
+        </listitem>
+        <listitem>
+         <simpara>az üres <link linkend="language.types.string"
+           >string</link>, és a "0" <link linkend="language.types.string"
+           >string</link> </simpara>
+        </listitem>
+        <listitem>
+         <simpara>egy elemeket nem tartalmazó
+         <link linkend="language.types.array">array (tömb)</link></simpara>
+        </listitem>
+        <listitem>
+         <simpara>egy elemeket nem tartalmazó
+         <link linkend="language.types.object">object (objektum)</link></simpara>
+        </listitem>
+        <listitem>
+         <simpara>a speciális <link linkend="language.types.null"
+            >&null;</link> érték
+         </simpara>
+        </listitem>
+       </itemizedlist>
+       
+       Minden más érték &true; lesz (beleértve bármilyen
+       <link linkend="language.types.resource">resource (eőforrás)</link>
+       típusú értéket).
+       <warning>
+        <simpara>
+         A <literal>-1</literal> is &true; lesz,
+         mint minden más nem nulla (akár negatív, akár pozitív) szám!
+        </simpara>
+       </warning>
+      </para>
+    </sect2>
+   </sect1>
+
+
+   <sect1 id="language.types.integer">
+    <title>Egész számok</title>
+    
+    <simpara>
+     Egy <type>integer</type> a következő halmaz része:
+     Z = {..., -2, -1, 0, 1, 2, ...}.
+    </simpara>
+     
+    <para>
+     Lásd még a
+     <link linkend="ref.gmp">Tetszőleges pontosságú egészek</link> és a
+     <link linkend="language.types.double">Lebegőpontos számok</link>
+     című részeket. 
+    </para>
+
+    <sect2 id="language.types.integer.syntax">
+     <title>Szintaxis</title>
+     <simpara>
+      Az egészek megadhatók decimális (10 alapú), hexadecimális (16 alapú)
+      vagy oktális (8 alapú) számként, opcionális előjellel (- vagy +).
+     </simpara>
+     <para>
+      Ha az oktális formát választod, a számot egy
+      <literal>0</literal> (nulla) jeggyel kell kezdened, ha a
+      hexadecimálisat, akkor <literal>0x</literal>-el.
+      <example>
+       <title>Egész értékek</title>
+       <programlisting role="php">
+$a = 1234; # decimális szám
+$a = -123; # negatív szám
+$a = 0123; # oktális szám (megegyezik a 83 decimális számmal)
+$a = 0x1A; # hexadecimális szám (megegyezik a 26 decimális számmal)
+       </programlisting>
+      </example>
+      Az egészek maximális mérete operáciüs rendszertől függ,
+      az átlagos érték a két billió (32 bites előjeles egész).
+     </para>
+     <note>
+      <simpara>
+       PHP-ben nincs egész osztás. Az <literal>1/2</literal>
+       művelet a <literal>0.5</literal> <type>double (lebegépontos)</type>
+       értéket eredményezi.
+      </simpara>
+     </note>
+    </sect2>
+   
+    <sect2 id="language.types.integer.overflow">
+     <title>Egészek értelmezési határának túllépése</title>
+     <para>
+      Az <type>integer</type> típus értelmezési tartományán kívül
+      eső egész értékek <type>double</type> típussá alakulnak.
+      <informalexample>
+       <programlisting role="php">
+$nagy_szam =  2147483647;
+var_dump($nagy_szam);
+// kimenete: int(2147483647)
+$nagyobb_szam =  2147483648;
+var_dump($nagyobb_szam);
+// kimenete: float(2147483648)
+       </programlisting>
+      </informalexample>
+      Ráadásul ha valamilyen függvény, vagy operátor az 
+      <type>integer</type> típus értelmezési tartományán kívül
+      eső értéket ad, a <type>double</type> típussá alakítás
+      automatikusan megtörténik.
+      <informalexample>
+       <programlisting role="php">
+$millio = 1000000;
+$nagy_szam =  50000 * $millio;
+var_dump($nagy_szam);
+// kimenete: float(50000000000)
+       </programlisting>
+      </informalexample>
+      <warning>
+       <simpara>
+        Sajnálatosan meg kell említenünk, hogy egy hiba van
+        a PHP-ben (még a 4.0.6-osban is, de feltehetően a 4.0.7-es
+        már javítja a hibát). Ez az átalakítás nem működik mindig
+        pontosan, ha negatív számokkal is számolunk. Ha mindkét
+        operandus pozitív, nincs semmi probléma. Például: ha a 
+        <literal>-50000 * $millio</literal> értéket kérjük,
+        a válasz: <literal>-429496728</literal>.
+       </simpara>
+      </warning>
+     </para>
+    </sect2>
+
+    <sect2 id="language.types.integer.casting">
+     <title>Egész értékké alakítás</title>
+      <simpara>
+       Ha kifejezetten <type>integer</type> típusúvá szeretnél
+       alakítani egy értéket, használd az <literal>(int)</literal>
+       vagy az <literal>(integer)</literal> típusátalakítást.
+       A legtöbb esetben azonban nem kell ezt alkalmaznod, mivel
+       az érték automatikusan átalakul, ha egy operátor, függvény,
+       vagy vezérlési szerkezet <type>integer</type> típusú
+       argumentumot vár.
+      </simpara>
+      <simpara>
+       Lásd még a <link linkend="language.types.type-juggling">Bűvészkedés
+       a típusokkal</link> című részt.
+      </simpara>
+      
+      <sect3 id="language.types.integer.casting.from-boolean">
+       <title>Átalakítás<link linkend="language.types.boolean"
+           >boolean (logikai)</link> értékekről</title>
+       <simpara>
+        A &false; (hamis) érték a
+        <literal>0</literal> (nulla) egész
+        számmá alakul, a &true; (igaz) érték
+        az <literal>1</literal> (egy) egész számot adja.
+       </simpara>
+      </sect3>
+
+      <sect3 id="language.types.integer.casting.from-double">
+       <title>Átalakítás lebegőpontos értékekről</title>
+       <simpara>
+        Lebegépontos számok egész értékké alakításakor
+        a szám tört része elvész, azaz
+        <emphasis>lefelé kerekítés</emphasis> történik.
+       </simpara>
+       
+       <para>
+        Ha a lebegőpontos szám az egész tartományon kívül esik
+        (általában <literal>+/- 2.15e+9 = 2^31</literal>), 
+        az eredmény nem definiált, mivel a lebegőpontos szám
+        nem rendelkezik elég precizitással, hogy pontos
+        egész eredményt kapj. Sem warning, sem notice szintű
+        hiba nem lép fel ebben az esetben!
+       </para>
+       
+       <warning><para>
+        Soha ne alakíts egy ismeretlen törtszámot  
+        <type>integer</type> típusúvá, mivel ez időnként nem
+        várt eredményekhez vezethet.
+        <informalexample>
+         <programlisting role="php">
+echo (int) ( (0.1+0.7) * 10 ); // kiírja, hogy 7!
+         </programlisting>
+        </informalexample>
+        
+        Lásd a <link 
+        linkend="warn.float-precision">a lebegőpontos
+        számok pontotsságának problémái</link> című részt.
+       </para></warning>
+      </sect3>
+      
+      <sect3 id="language.types.integer.casting.from-string">
+       <title>Átalakítás karakterláncokról</title>
+       <simpara>
+        Lásd a <link linkend="language.types.string.conversion">String 
+        átalakítás</link> című részt.
+       </simpara>
+      </sect3>
+      
+      <sect3 id="language.types.integer.casting.from-other">
+       <title>Átalakítás más típusokról</title>
+       <para>
+        Az egésszé alakítás viselkedése más típusokra nem
+        definiált. Jelenleg ezek az átalakítások megegyeznek
+        azzal, mintha először <link linkend="language.types.boolean.casting"
+        >logikai</link>, majd utána egész értékké
+        alakítottad volna a kiindulási értéket.
+        <caution>
+         <simpara>
+          Erre a viselkedeésre azonban <emphasis>nem</emphasis>
+          szabad építeni, mivel minden figyelmeztetés nélkül
+          megváltozhat.
+         </simpara>
+        </caution>
+       </para>
+      </sect3>
+
+    </sect2>
+   </sect1>
 
   <sect1 id="language.types.double">
    <title>Lebegőpontos számok</title>

Reply via email to