tom             Tue May  7 08:18:08 2002 EDT

  Modified files:              
    /phpdoc-de/language oop.xml 
  Log:
  finished translation
  
Index: phpdoc-de/language/oop.xml
diff -u phpdoc-de/language/oop.xml:1.10 phpdoc-de/language/oop.xml:1.11
--- phpdoc-de/language/oop.xml:1.10     Sun Apr  7 06:04:16 2002
+++ phpdoc-de/language/oop.xml  Tue May  7 08:18:08 2002
@@ -695,44 +695,44 @@
  </sect1>
 
  <sect1 id="language.oop.magic-functions">
-  <title>The magic functions <literal>__sleep</literal> and 
<literal>__wakeup</literal></title>
+  <title>Die "magischen" Funktionen <literal>__sleep</literal> und 
+<literal>__wakeup</literal></title>
 
   <para>
-   <function>serialize</function> checks if your class has a function with
-   the magic name <literal>__sleep</literal>. If so, that function is
-   being run prior to any serialization. It can clean up the object
-   and is supposed to return an array with the names of all variables
-   of that object that should be serialized.
+   <function>serialize</function> prüft, ob Ihre Klasse eine Funktion mit
+   dem magischen Namen <literal>__sleep</literal> enthält. Wenn dem so ist,
+   wird diese Funktion vor einer Serialisierung ausgeführt. Sie kann das
+   Objekt aufräumen und soll ein Array mit den Namen aller Variablen des
+   zu serialisierenden Objektes zurückgeben.
   </para>
   
   <para>
-   The intended use of <literal>__sleep</literal> is to close any
-   database connections that object may have, committing pending
-   data or perform similar cleanup tasks. Also, the function is
-   useful if you have very large objects which need not be
-   saved completely.
+   Die beabsichtigte Verwendung von <literal>__sleep</literal> ist,
+   eventuelle Datenbankverbindungen des Objektes zu schließen, noch
+   offene Daten zu committen, oder ähnliche Säuberungsaktionen
+   durchzuführen. Weiters ist diese Funktion hilfreich, wenn Sie
+   sehr große Objekte haben, die nicht komplett gespeichert werden 
+   müssen.
   </para>
   
   <para>
-   Conversely, <function>unserialize</function> checks for the
-   presence of a function with the magic name 
-   <literal>__wakeup</literal>. If present, this function can
-   reconstruct any resources that object may have.
+   Umgekehrt prüft <function>unserialize</function> die Existenz einer
+   Funktion mit dem magischen Namen <literal>__wakeup</literal>. Ist
+   diese vorhanden, kann sie Ressourcen des Objektes rekonstruieren.
   </para>
   
   <para>
-    The intended use of <literal>__wakeup</literal> is to
-    reestablish any database connections that may have been lost
-    during serialization and perform other reinitialization
-    tasks.
+    Die vorgesehene Verwendung von <literal>__wakeup</literal> ist die
+    Wiederherstellung von Datenbankverbindungen, welche während der
+    Serialisierung verloren gegangen sein könnten, sowie andere
+    Neuinitialisierungen.
   </para>
  </sect1>
   
  <sect1 id="language.oop.newref">
-   <title>References inside the constructor</title>
+   <title>Referenzen innherhalb des Konstruktors</title>
    <para>
-    Creating references within the constructor can lead to confusing
-    results. This tutorial-like section helps you to avoid problems.
+    Referenzen innerhalb des Konstruktors können zu verwirrenden
+    Resultaten führen. Dieser Abschnitt hilft, Probleme zu vermeiden.
  
     <informalexample>
      <programlisting role="php">
@@ -741,12 +741,12 @@
 {
     function Foo($name)
     {
-        // create a reference inside the global array $globalref
+        // eine Referenz innerhalb des globalen Arrays  $globalref erstellen
         global $globalref;
         $globalref[] = &$this;
-        // set name to passed value
+        // setze den Namen auf den übergebenen Wert
         $this->setName($name);
-        // and put it out
+        // und gib' ihn aus
         $this->echoName();
     }
 
@@ -766,11 +766,10 @@
   </para>
     
    <para>
-    Let us check out if there is a difference between
-    <varname>$bar1</varname> which has been created using
-    the copy <literal>=</literal> operator and
-    <varname>$bar2</varname> which has been created using
-    the reference <literal>=&amp;</literal> operator...
+    Prüfen wir, ob zwischen <varname>$bar1</varname>, die mittels
+    dem Operator zum Kopieren  <literal>=</literal> erstellt wurde,
+    und <varname>$bar2</varname>, die mittels dem Referenzoperator
+    <literal>=&amp;</literal> erstellt wurde, besteht...
 
     <informalexample>
      <programlisting role="php">
@@ -779,7 +778,7 @@
 $bar1->echoName();
 $globalref[0]->echoName();
 
-/* output:
+/* Ausgabe:
 set in constructor
 set in constructor
 set in constructor */
@@ -788,7 +787,7 @@
 $bar2->echoName();
 $globalref[1]->echoName();
 
-/* output:
+/* Ausgabe:
 set in constructor
 set in constructor
 set in constructor */
@@ -797,49 +796,50 @@
     </informalexample>
    </para>
    <para>
-    Apparently there is no difference, but in fact there is a
-    very significant one: <varname>$bar1</varname> and
-    <varname>$globalref[0]</varname> are _NOT_ referenced, they
-    are NOT the same variable. This is because "new" does not
-    return a reference by default, instead it returns a copy.
+    Scheinbar besteht kein Unterschied, aber tatsächlich existiert ein
+    signifikanter: <varname>$bar1</varname> und
+    <varname>$globalref[0]</varname> sind NICHT referenziert, d.h. sie
+    sind NICHT die selbe Variable. Das kommt daher, dass "new" nicht
+    automatisch eine Referenz, sondern eine Kopie zurückgibt.
     <note>
      <simpara>
-      There is no performance loss (since PHP 4 and up use reference
-      counting) returning copies instead of references. On the
-      contrary it is most often better to simply work with copies
-      instead of references, because creating references takes some
-      time where creating copies virtually takes no time (unless none
-      of them is a large array or object and one of them gets changed
-      and the other(s) one(s) subsequently, then it would be wise to
-      use references to change them all concurrently).
+      Das zurückgeben von Kopien anstatt von Referenzen stellt keinen
+      Performanceverlust dar (da PHP 4 und höher Reference Counting
+      verwendet). Andererseits ist es sehr oft besser, einfach mit Kopien
+      anstatt mit Referenzen zu arbeiten, da die Erstellung von Referenzen
+      etwas Zeit in Anspruch nimmt, während das Erstellen von Kopien so gut
+      wie keine Zeit braucht (sofern keine von ihnen ein großes Array oder
+      Objekt ist, und eines davon geändert wird und das/die andere/n
+      nachträglich. In diesem Fall wäre es besser, Referenzen zu verwenden,
+      um sie alle gleichzeitig zu ändern).
      </simpara>
     </note>
-    To prove what is written above let us watch the code below.
+    Um das zuvor geschriebene zu beweisen, sehen wir uns den folgenden Code an.
 
     <informalexample>
      <programlisting role="php">
 <![CDATA[
-// now we will change the name. what do you expect?
-// you could expect that both $bar1 and $globalref[0] change their names...
+// nun werden wir den Namen ändern. Was erwarten Sie?
+// ...dass sowohl $bar1, als auch $globalref[0] ihre Namen ändern...
 $bar1->setName('set from outside');
 
-// as mentioned before this is not the case.
+// wie bereits zuvor erwähnt, ist dies nicht der Fall
 $bar1->echoName();
 $globalref[0]->echoName();
 
-/* output:
+/* Ausgabe:
 set from outside
 set in constructor */
 
-// let us see what is different with $bar2 and $globalref[1]
+// lassen Sie uns den Unterschied zwischen $bar2 and $globalref[1] ansehen
 $bar2->setName('set from outside');
 
-// luckily they are not only equal, they are the same variable
-// thus $bar2->name and $globalref[1]->name are the same too
+// glücklicherweise sind sie nicht nur nicht gleich, sondern auch die selbe
+// Variable; demnach sind $bar2->name und $globalref[1]->name ebenfalls gleich
 $bar2->echoName();
 $globalref[1]->echoName();
 
-/* output:
+/* Ausgabe:
 set from outside
 set from outside */
 ]]>
@@ -847,7 +847,7 @@
     </informalexample>   
    </para>   
    <para>
-   Another final example, try to understand it.
+   Ein anderes, letztes Beispiel zum Verständnis:
    
     <informalexample>
      <programlisting role="php">
@@ -857,7 +857,7 @@
     function A($i)
     {
         $this->value = $i;
-        // try to figure out why we do not need a reference here
+        // finden Sie heraus, warum wir hier keine Referenz benötigen
         $this->b = new B($this);
     }
 
@@ -886,8 +886,8 @@
     }
 }
 
-// try to undestand why using a simple copy here would yield
-// in an undesired result in the *-marked line
+// überlegen Sie, warum hier die Verwendung einer einfachen Kopie in der
+// mit * markierten Zeile zu einem unerwünschten Ergebnis führen würde
 $a =& new A(10);
 $a->createRef();
 
@@ -902,7 +902,7 @@
 $a->c->echoValue();
 
 /*
-output:
+Ausgabe:
 class A: 10
 class B: 10
 class B: 10


Reply via email to