Sfoglia il codice sorgente

[DOCUMENTATION] German:

- sync up to r18269

git-svn-id: http://framework.zend.com/svn/framework/standard/trunk@18315 44c647ce-9c0f-0410-b52a-842ac1e357ba
thomas 16 anni fa
parent
commit
c39309c130

+ 138 - 0
documentation/manual/de/module_specs/Zend_Filter-Null.xml

@@ -0,0 +1,138 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- EN-Revision: 18216 -->
+<!-- Reviewed: no -->
+<sect2 id="zend.filter.set.null">
+    <title>Null</title>
+
+    <para>
+        Dieser Filter ändert die angegebene Eingabe so dass Sie <constant>NULL</constant> ist wenn
+        Sie spezifischen Kriterien entspricht. Das ist oft notwendig wenn man mit Datenbanken
+        arbeitet und einen <constant>NULL</constant> Wert statt einem Boolean oder irgendeinem
+        anderen Typ haben will.
+    </para>
+
+    <sect3 id="zend.filter.set.null.default">
+        <title>Standardverhalten für Zend_Filter_Null</title>
+
+        <para>
+            Standardmäßig arbeitet dieser Filter wie <acronym>PHP</acronym>'s
+            <methodname>empty()</methodname> Methode; in anderen Worten, wenn
+            <methodname>empty()</methodname> ein boolsches true zurückgibt, dann wird ein
+            <constant>NULL</constant> Wert zurückgegeben.
+        </para>
+
+        <programlisting language="php"><![CDATA[
+$filter = new Zend_Filter_Null();
+$value  = '';
+$result = $filter->filter($value);
+// Gibt null statt einem leeren String zurück
+]]></programlisting>
+
+        <para>
+            Das bedeutet das <classname>Zend_Filter_Null</classname>, ohne die Angabe irgendeiner
+            Konfiguration, alle Eingabetypen akteptiert und in den selben Fällen
+            <constant>NULL</constant> zurückgibt wie <methodname>empty()</methodname>.
+        </para>
+
+        <para>
+            Jeder andere Wert ist zurückgegeben wie er ist, ohne irgendwelche Änderungen.
+        </para>
+    </sect3>
+
+    <sect3 id="zend.filter.set.null.types">
+        <title>Ändern des Verhaltens von Zend_Filter_Null</title>
+
+        <para>
+            Manchmal ist es nicht genug basieren auf <methodname>empty()</methodname> zu filtern.
+            Hierfür erlaubt es <classname>Zend_Filter_Null</classname> die Typen zu konfigurieren
+            welche konvertiert werden und jene die nicht konvertiert werden.
+        </para>
+
+        <para>
+            Die folgenden Typen können behandelt werden:
+        </para>
+
+        <itemizedlist>
+            <listitem>
+                <para>
+                    <emphasis>boolean</emphasis>: Konvertiert einen boolschen
+                    <emphasis><constant>FALSE</constant></emphasis> Wert zu
+                    <constant>NULL</constant>.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <emphasis>integer</emphasis>: Konvertiert einen Integer <emphasis>0</emphasis>
+                    Wert zu <constant>NULL</constant>.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <emphasis>empty_array</emphasis>: Konvertiert ein leeres
+                    <emphasis>Array</emphasis> zu <constant>NULL</constant>.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <emphasis>string</emphasis>: Konvertiert einen leeren String
+                    <emphasis>''</emphasis> zu <constant>NULL</constant>.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <emphasis>zero</emphasis>: Konvertiert einen String der eine einzelne Null
+                    Ziffer enthält (<emphasis>'0'</emphasis>) zu <constant>NULL</constant>.
+                </para>
+            </listitem>
+
+            <listitem>
+                <para>
+                    <emphasis>all</emphasis>: Konvertiert alle obigen Typen zu
+                    <constant>NULL</constant>. (Das ist das Standardverhalten.)
+                </para>
+            </listitem>
+        </itemizedlist>
+
+        <para>
+            Es gibt verschiedene Wege um zu wählen welche der obigen Typen gefiltert werden und
+            welche nicht. Man kann einen oder mehrere Typen angeben und diese addieren, man kann
+            ein Array angeben, man kann Konstanten verwenden, oder man kann einen textuellen
+            String angeben. Siehe die folgenden Beispiele:
+        </para>
+
+        <programlisting language="php"><![CDATA[
+// Konvertiert false zu null
+$filter = new Zend_Filter_Null(Zend_Filter_Null::BOOLEAN);
+
+// Konvertiert false und 0 zu null
+$filter = new Zend_Filter_Null(
+    Zend_Filter_Null::BOOLEAN + Zend_Filter_Null::INTEGER
+);
+
+// Konvertiert false und 0 zu null
+$filter = new Zend_Filter_Null( array(
+    Zend_Filter_Null::BOOLEAN,
+    Zend_Filter_Null::INTEGER
+));
+
+// Konvertiert false und 0 zu null
+$filter = new Zend_Filter_Null(array(
+    'boolean',
+    'integer',
+));
+]]></programlisting>
+
+        <para>
+            Man kann auch eine Instanz von <classname>Zend_Config</classname> angeben um die
+            gewünschten Typen zu setzen. Um Typen im nachhinein zu setzen kann
+            <methodname>setType()</methodname> verwendet werden.
+        </para>
+    </sect3>
+</sect2>
+<!--
+vim:se ts=4 sw=4 et:
+-->

+ 2 - 1
documentation/manual/de/module_specs/Zend_Filter-Set.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- EN-Revision: 17987 -->
+<!-- EN-Revision: 18216 -->
 <!-- Reviewed: no -->
 <sect1 id="zend.filter.set" xmlns:xi="http://www.w3.org/2001/XInclude">
 
@@ -82,6 +82,7 @@
 
     <xi:include href="Zend_Filter-LocalizedToNormalized.xml" />
     <xi:include href="Zend_Filter-NormalizedToLocalized.xml" />
+    <xi:include href="Zend_Filter-Null.xml" />
 
     <sect2 id="zend.filter.set.stripnewlines">
         <title>StripNewlines</title>

+ 18 - 2
documentation/manual/de/module_specs/Zend_Mail-Introduction.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- EN-Revision: 17232 -->
+<!-- EN-Revision: 18260 -->
 <!-- Reviewed: no -->
 <sect1 id="zend.mail.introduction">
 
@@ -132,8 +132,24 @@ $mail->send();
             </para>
         </note>
 
-    </sect2>
+        <warning>
+            <title>Sendmail Transport und Windows</title>
+
+            <para>
+                Das Handbuch von PHP sagt aus dass die <code>mail()</code> ein unterschiedliches
+                Verhalten auf Windows und auf *nix basierten Systemen zeigt. Die Verwendung von
+                Sendmail Transport wird auf Windows nicht in Verbindung mit
+                <methodname>addBcc()</methodname> funktionieren. Die <code>mail()</code> Funktion
+                sendet auf eine Art und Weise an den BCC Empfänger, das alle anderen Empfänger
+                diesen als Empfänger sehen!
+            </para>
 
+            <para>
+                Deswegen sollte man, wenn man BCC auf einem Windows Server verwenden will, den
+                SMTP Transport für das Senden verwenden!
+            </para>
+        </warning>
+    </sect2>
 </sect1>
 <!--
 vim:se ts=4 sw=4 et:

+ 10 - 8
documentation/manual/de/module_specs/Zend_Pdf-InteractiveFeatures.xml

@@ -864,22 +864,24 @@ printf("Aktionen im Baum: %d\n", $actionsCount++); // Ausgabe 'Aktionen im Baum:
         </sect3>
 
         <sect3 id="zend.pdf.pages.interactive-features.actions.open-action">
-            <title>Document Open Action</title>
+            <title>Dokument Öffnen Aktion</title>
 
             <para>
-                Special open action may be specify a destination to be displayed or an action
-                to be performed when the document is opened.
+                Eine spezielle Öffnen Aktion kann durch ein Ziel spezifiziert werden das angezeigt
+                werden soll, oder eine Aktion die ausgeführt werden soll wenn das Dokument geöffnet
+                wird.
             </para>
 
             <para>
-                <methodname>Zend_Pdf_Target Zend_Pdf::getOpenAction()</methodname> method
-                returns current document open action (or null if open action is not set).
+                Die <methodname>Zend_Pdf_Target Zend_Pdf::getOpenAction()</methodname> Methode gibt
+                die aktuelle Dokument Öffnen Aktion zurück (oder null wenn die Öffnen Aktion nicht
+                gesetzt ist).
             </para>
 
             <para>
-                <methodname>setOpenAction(Zend_Pdf_Target $openAction = null)</methodname>
-                method sets document open action or clean it if <varname>$openAction</varname>
-                is null.
+                Die <methodname>setOpenAction(Zend_Pdf_Target $openAction = null)</methodname>
+                Methode setzt eine Dokument Öffnen Aktion oder löscht diese wenn
+                <varname>$openAction</varname> null ist.
             </para>
         </sect3>
     </sect2>

+ 3 - 3
documentation/manual/de/module_specs/Zend_Test-PHPUnit-Bootstrapping.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- EN-Revision: 17175 -->
+<!-- EN-Revision: 18222 -->
 <!-- Reviewed: no -->
 <sect2 id="zend.test.phpunit.bootstrapping">
     <title>Bootstrapping der eigenen TestCases</title>
@@ -73,7 +73,7 @@ class UserControllerTest extends Zend_Test_PHPUnit_ControllerTestCase
     <para>
         Beachte das <methodname>parent::setUp()</methodname> aufgerufen wird; das ist notwendig, da
         die <methodname>setUp()</methodname> Methode von
-        <classname>Zend_Test_PHPUnit_Controller_TestCase</classname> die Erinnerung des Bootstrap
+        <classname>Zend_Test_PHPUnit_ControllerTestCase</classname> die Erinnerung des Bootstrap
         Prozesses durchführen wird (was den Aufruf des Callbacks inkludiert).
     </para>
 
@@ -94,7 +94,7 @@ class UserControllerTest extends Zend_Test_PHPUnit_ControllerTestCase
     <itemizedlist>
         <listitem><para>
             Wir bieten keine alternative Implementierung der Anfrage und Antwort Objekte; diese
-            werden nicht verwendet. <classname>Zend_Test_PHPUnit_Controller_TestCase</classname>
+            werden nicht verwendet. <classname>Zend_Test_PHPUnit_ControllerTestCase</classname>
             verwendet eigene Anfrage und Antwort Objekte,
             <classname>Zend_Controller_Request_HttpTestCase</classname> und
             <classname>Zend_Controller_Response_HttpTestCase</classname>. Diese Objekte bieten

+ 54 - 3
documentation/manual/de/module_specs/Zend_Test-PHPUnit-Testing.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- EN-Revision: 17175 -->
+<!-- EN-Revision: 18225 -->
 <!-- Reviewed: no -->
 <sect2 id="zend.test.phpunit.testing">
     <title>Testen eigener Controller und MVC Anwendungen</title>
@@ -16,7 +16,7 @@
     </para>
 
     <programlisting language="php"><![CDATA[
-class IndexControllerTest extends Zend_Test_PHPUnit_Controller_TestCase
+class IndexControllerTest extends Zend_Test_PHPUnit_ControllerTestCase
 {
     // ...
 
@@ -35,7 +35,7 @@ class IndexControllerTest extends Zend_Test_PHPUnit_Controller_TestCase
     </para>
 
     <programlisting language="php"><![CDATA[
-class FooControllerTest extends Zend_Test_PHPUnit_Controller_TestCase
+class FooControllerTest extends Zend_Test_PHPUnit_ControllerTestCase
 {
     // ...
 
@@ -78,6 +78,57 @@ class FooControllerTest extends Zend_Test_PHPUnit_Controller_TestCase
     <para>
         Jetzt wurde die Anfrage durchgeführt, es ist also Zeit Ausnahmen zu prüfen.
     </para>
+
+    <sect3 id="zend.test.phpunit.testing.redirector">
+        <title>Controller Tests und der Redirector Action Helper</title>
+
+        <important>
+            <para>
+                Der Redirect Action Helper hat Probleme mit der <code>exit()</code> Anweisung wenn
+                die <methodname>gotoAndExit()</methodname> Methode verwendet wird, und wird dann
+                natürlich auch einen Test beenden der für diese Methode läuft. Um die eigene
+                Anwendung testbar zu machen sollte diese Methode nicht am Redirector verwendet
+                werden.
+            </para>
+        </important>
+
+        <para>
+            Durch seine Natur führt das Redirector Action Helper Plugin ein Redirect aus und steigt
+            nach diesem aus. Weil man Teile einer Anwendung nicht testen kann wenn diese Exit
+            Aufrufe durchführen, schaltet
+            <classname>Zend_Test_PHPUnit_ControllerTestCase</classname> den Exit Teil des
+            Redirectors was zu unterschiedlichen Verhaltensweisen in Tests und echter Anwendung
+            führen kann. Um sicherzustellen das der Redirect richtig arbeitet  sollte man diesen
+            auf folgendem Weg durchführen:
+        </para>
+
+        <programlisting language="php"><![CDATA[
+class MyController extends Zend_Controller_Action
+{
+    public function indexAction()
+    {
+        if($someCondition == true) {
+            return $this->_redirect(...);
+        } else if($anotherCondition == true) {
+            $this->_redirector->gotoSimple("foo");
+            return;
+        }
+
+        // Mach was
+    }
+}
+]]>
+        </programlisting>
+
+        <important>
+            <para>
+                Abhängig von der eigenen Anwendung kann es sein dass das nicht genug ist da eine
+                zusätzliche <code>preDispatch()</code> oder <code>postDispatch()</code> Logik
+                ausgeführt werden könnte. Das kann aktuell mit Zend_Test auf keine vernünftige Weise
+                behandelt werden.
+            </para>
+        </important>
+    </sect3>
 </sect2>
 <!--
 vim:se ts=4 sw=4 et: