svn: /phpdoc/de/trunk/ language/control-structures/switch.xml reference/mysql/configure.xml

[email protected] (Hartmut Holzgraefe)
Newsgroups php.doc.de
Message-ID <[email protected]>
hholzgra                                 Sun, 03 Jul 2011 09:14:19 +0000

Revision: http://svn.php.net/viewvc?view=revision&revision=312854

Log:
fresh translations

Changed paths:
    A   phpdoc/de/trunk/language/control-structures/switch.xml
    A   phpdoc/de/trunk/reference/mysql/configure.xml
svn-diffs-312854.txt (text/x-diff, 15.5 KB)
Added: phpdoc/de/trunk/language/control-structures/switch.xml
===================================================================
--- phpdoc/de/trunk/language/control-structures/switch.xml	                        (rev 0)
+++ phpdoc/de/trunk/language/control-structures/switch.xml	2011-07-03 09:14:19 UTC (rev 312854)
@@ -0,0 +1,255 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- $Revision$ -->
+<!-- EN-Revision: 288721 Maintainer: hholzgra Status: working -->
+<sect1 xml:id="control-structures.switch" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <title><literal>switch</literal></title>
+ <simpara>
+  Die <literal>switch</literal> Anweisung entspricht in etwa einer
+  Folge von <literal>if</literal> Anweisungen die jeweils den gleichen
+  Ausdruck prüfen. Es kommt oft vor das man dieselbe Variable (oder
+  denselben Ausdruck) gegen viele verschiedene mögliche Werte prüfen
+  und abhängig davon unterschiedlichen Code ausführen möchte. Genau
+  hierfür wurde die <literal>switch</literal> Anweisung eingeführt.
+ </simpara>
+ <note>
+  <simpara>
+   Beachten Sie das im Unterschied zu einigen anderen Sprachen die
+   <link linkend="control-structures.continue">continue</link> Anweisung
+   auch auf switch anwendbar ist und sich ähnlich wie <literal>break</literal>
+   verhält. Wenn Sie ein switch innerhalb einer Schleife verwenden und
+   mit dem nächsten Schleifendurchlauf beginnen wollen so müssen Sie in
+   diesem Fall <literal>continue 2</literal> angeben.
+  </simpara>
+ </note>
+ <note>
+  <para>
+   Beachten Sie auch das switch/case <link linkend="types.comparisions-loose"
+   >typschwache Vergleiche</link> durchführt.
+  </para>
+ </note>
+ <para>
+  Die folgenden beiden Beispiele zeigen zwei verschiedene Wege
+  um das gleiche Verhalten zu erreichen. Eines benutzt eine
+  Folge von <literal>if</literal> und <literal>elseif</literal>
+  Anweisungen, das andere eine <literal>switch</literal>
+  Anweisung:
+  <example>
+   <title><literal>switch</literal> Anweisung</title>
+   <programlisting role="php">
+<![CDATA[
+<?php
+if ($i == 0) {
+    echo "i equals 0";
+} elseif ($i == 1) {
+    echo "i equals 1";
+} elseif ($i == 2) {
+    echo "i equals 2";
+}
+
+switch ($i) {
+    case 0:
+        echo "i equals 0";
+        break;
+    case 1:
+        echo "i equals 1";
+        break;
+    case 2:
+        echo "i equals 2";
+        break;
+}
+?>
+]]>
+   </programlisting>
+  </example>
+  <example>
+   <title><literal>switch</literal> gestattet den Vergleich mit Strings</title>
+   <programlisting role="php">
+<![CDATA[
+<?php
+switch ($i) {
+    case "apple":
+        echo "i is apple";
+        break;
+    case "bar":
+        echo "i is bar";
+        break;
+    case "cake":
+        echo "i is cake";
+        break;
+}
+?>
+]]>
+   </programlisting>
+  </example>
+ </para>
+ <para>
+  Um Fehler zu vermeiden ist es wichtig zu verstehen wie eine
+  <literal>switch</literal> Anweisung ausgeführt wird. Eine
+  <literal>switch</literal> Anweisung wird zeilenweise (genauer:
+  Anweisung für Anweisung) ausgewertet. Zunächst einmal wird
+  überhaupt kein Code ausgeführt. Erst wenn eine <literal>case</literal>
+  Anweisung gefunden wird die dem Wert des an <literal>switch</literal>
+  übergebenen Ausdrucks entspricht beginnt PHP tatsächlich die folgenden
+  Anweisungen auszuführen. Die Ausführung wird fortgesetzt bis das Ende
+  der <literal>switch</literal> Anweisung erreicht ist oder bis PHP
+  bei der Ausführung auf eine <literal>break</literal> Anweisung stößt.
+  Wenn Sie am Ende eines <literal>case</literal> Blocks kein <literal
+  >break</literal> setzen so wird die Ausführung mit dem nächsten
+  <literal>case</literal> fortgesetzt, z.B.:
+  <informalexample>
+   <programlisting role="php">
+<![CDATA[
+<?php
+switch ($i) {
+    case 0:
+        echo "i equals 0";
+    case 1:
+        echo "i equals 1";
+    case 2:
+        echo "i equals 2";
+}
+?>
+]]>
+   </programlisting>
+  </informalexample>
+ </para>
+ <simpara>
+  Here, if <varname>$i</varname> is equal to 0, PHP would execute all of the echo
+  statements!  If <varname>$i</varname> is equal to 1, PHP would execute the last two
+  echo statements. You would get the expected behavior ('i equals 2'
+  would be displayed) only if <varname>$i</varname> is equal to 2.  Thus,
+  it is important not to forget <literal>break</literal> statements
+  (even though you may want to avoid supplying them on purpose under
+  certain circumstances).
+ </simpara>
+ <simpara>
+  In a <literal>switch</literal> statement, the condition is
+  evaluated only once and the result is compared to each
+  <literal>case</literal> statement. In an <literal>elseif</literal>
+  statement, the condition is evaluated again. If your condition is
+  more complicated than a simple compare and/or is in a tight loop,
+  a <literal>switch</literal> may be faster.
+ </simpara>
+ <para>
+  The statement list for a case can also be empty, which simply
+  passes control into the statement list for the next case.
+  <informalexample>
+   <programlisting role="php">
+<![CDATA[
+<?php
+switch ($i) {
+case 0:
+case 1:
+case 2:
+    echo "i is less than 3 but not negative";
+    break;
+case 3:
+    echo "i is 3";
+}
+?>
+]]>
+   </programlisting>
+  </informalexample>
+ </para>
+ <para>
+  A special case is the <literal>default</literal> case.  This case matches
+  anything that wasn't matched by the other cases.  For example:
+  <informalexample>
+   <programlisting role="php">
+<![CDATA[
+<?php
+switch ($i) {
+    case 0:
+        echo "i equals 0";
+        break;
+    case 1:
+        echo "i equals 1";
+        break;
+    case 2:
+        echo "i equals 2";
+        break;
+    default:
+       echo "i is not equal to 0, 1 or 2";
+}
+?>
+]]>
+   </programlisting>
+  </informalexample>
+ </para>
+ <para>
+  The <literal>case</literal> expression may be any expression that
+  evaluates to a simple type, that is, integer or floating-point
+  numbers and strings.  Arrays or objects cannot be used here unless
+  they are dereferenced to a simple type.
+ </para>
+ <para>
+  The alternative syntax for control structures is supported with
+  switches. For more information, see <link
+  linkend="control-structures.alternative-syntax">Alternative syntax
+  for control structures</link>.
+  <informalexample>
+   <programlisting role="php">
+<![CDATA[
+<?php
+switch ($i):
+    case 0:
+        echo "i equals 0";
+        break;
+    case 1:
+        echo "i equals 1";
+        break;
+    case 2:
+        echo "i equals 2";
+        break;
+    default:
+        echo "i is not equal to 0, 1 or 2";
+endswitch;
+?>
+]]>
+   </programlisting>
+  </informalexample>
+ </para>
+ <para>
+  Its possible to use a semicolon instead of a colon after a case like:
+  <informalexample>
+   <programlisting role="php">
+<![CDATA[
+<?php
+switch($beer)
+{
+    case 'tuborg';
+    case 'carlsberg';
+    case 'heineken';
+        echo 'Good choice';
+    break;
+    default;
+        echo 'Please make a new selection...';
+    break;
+}
+?>
+]]>
+   </programlisting>
+  </informalexample>
+ </para>
+</sect1>
+
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-omittag:t
+sgml-shorttag:t
+sgml-minimize-attributes:nil
+sgml-always-quote-attributes:t
+sgml-indent-step:1
+sgml-indent-data:t
+indent-tabs-mode:nil
+sgml-parent-document:nil
+sgml-default-dtd-file:"~/.phpdoc/manual.ced"
+sgml-exposed-tags:nil
+sgml-local-catalogs:nil
+sgml-local-ecat-files:nil
+End:
+vim600: syn=xml fen fdm=syntax fdl=2 si
+vim: et tw=78 syn=sgml
+vi: ts=1 sw=1
+-->


Property changes on: phpdoc/de/trunk/language/control-structures/switch.xml
___________________________________________________________________
Added: svn:keywords
   + Id Rev Revision Date LastChangedDate LastChangedRevision Author LastChangedBy HeadURL URL
Added: svn:eol-style
   + native

Added: phpdoc/de/trunk/reference/mysql/configure.xml
===================================================================
--- phpdoc/de/trunk/reference/mysql/configure.xml	                        (rev 0)
+++ phpdoc/de/trunk/reference/mysql/configure.xml	2011-07-03 09:14:19 UTC (rev 312854)
@@ -0,0 +1,173 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- $Revision$ -->
+<!-- EN-Revision: 302452 Maintainer: hholzgra Status: ready -->
+<section xml:id="mysql.installation" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
+ &reftitle.install;
+
+ <para xml:id="mysql.configure">
+  Benutzen Sie die
+  <option role="configure">--with-mysql[=DIR]</option>
+  Konfigurationsoption um diese Erweiterung zu kompilieren.
+  Der optionale Parameter <literal>[DIR]</literal> sollte dabei
+  das Verzeichnis angeben in dem Sie MySQL installiert haben.
+ </para>
+ <para>
+  Die MySQL Erweiterung ist zwar kompatibel mit aktuellen MySQL Versionen,
+  sie unterstützt aber nich mehr alle zusätzlichen Funktionalitäten die
+  seit MySQL 4.1.0 hinzugekommen sind. Wenn Sie diese benötigen so
+  verwenden Sie statt dessen die neuere <link linkend="ref.mysqli">MySQLi</link>
+  Erweiterung.
+ </para>
+ <para>
+  Wenn Sie beide MySQL Erweiterungen gleichzeitig nutzen wollen so
+  sollten Sie diese mit der gleichen MySQL Client Library Version
+  erstellen um mögliche Versionskonflikte zu vermeiden.
+ </para>
+
+ <section xml:id="mysql.installation.linux">
+  <title>Installation auf Linux Systemen</title>
+  <section>
+   <title>PHP 4</title>
+   <para>
+    Die <option role="configure">--with-mysql</option> ist automatisch
+    aktiviert. Wünschen Sie keine MySQL Unterstützung so können Sie
+    diese mit <option role="configure">--without-mysql</option> deaktivieren.
+    Wird hinter <option role="configure">--with-mysql</option> kein
+    Verzeichnis angegeben so wird die mit PHP mitgelieferte MySQL
+    Client Bibliothek genutzt.
+   </para>
+   <para>
+    Anwender die auch andere Applikationen installiert haben die
+    MySQL nutzen (z.B. <literal>auth-mysql</literal>) sollten nicht
+    die mitgelieferte Bibliothek benutzen sondern statt dessen den
+    Pfad zur vorhandenen MySQL Installation angeben:
+    <option role="configure">--with-mysql=/pfad/zu/mysql</option>.
+    Dies erzwingt das PHP die auf dem System installierte Client
+    Bibliothek mit benutzt und vermeidet mögliche Versionskonflikte.
+   </para>
+  </section>
+  <section>
+   <title>PHP 5.0.x, 5.1.x, 5.2.x</title>
+   <para>
+    Die MySQL Client Bibliothek wird in diesen Versionen nicht mehr
+    mitgeliefert und MySQL ist daher auch nicht mehr automatisch
+    aktiviert. Zu den Hintergründen hierzu gibt es einen
+    <link linkend="faq.databases.mysql.php5">FAQ</link> Eintrag mit
+    näheren Informationen.
+    Benutzen Sie die <option role="configure">--with-mysql[=DIR]</option>
+    Konfiguration die MySQL Erweiterung zu aktivieren. Die Client
+    Bibliothek und die zugehörigen Header-Dateien können Sie von
+    der <link xlink:href="&url.mysql;">MySQL</link> Webseite herunterladen.
+   </para>
+  </section>
+  <section xml:id="mysql.installation.linux.mysqlnd">
+   <title>PHP 5.3.0+</title>
+   <para>
+    Ab PHP 5.3.0 nutzen alle MySQL-spezifischen Erweiterungen standardmäßig
+    den <link linkend="mysqlnd.overview">MySQL Native Driver</link>.
+    Dies bedeutet das die MySQL Client Bibliothek (<literal>libmysql</literal>)
+    nicht mehr benötigt wird um Verbindungnen mit einer MySQL Datenbank zu
+    ermöglichen. Die <literal>mysql</literal>, <literal>mysqli</literal> und
+    <literal>PHP_PDO_MYSQL</literal> Erweiterunge sind in PHP 5.3.0+ alle
+    automatisch aktiviert und nutzen den MySQL Native Driver. Es sind keine
+    weiteren Installationsschritte hierfür notwendig, abhängig von Ihren
+    Anforderungen möchten Sie allerdings evtl. einige der Voreinstellungen
+    in Ihrer &php.ini; anpassen.
+    </para>
+  </section>
+ </section>
+
+ <section xml:id="mysql.installation.windows">
+  <title>Installation auf Windows Systemen</title>
+  <section>
+   <title>PHP 4</title>
+   <para>
+    Die MySQL Erweiterung ist bereits in PHP einkompiliert.
+   </para>
+  </section>
+  <section>
+   <title>PHP 5.0.x, 5.1.x, 5.2.x</title>
+   <para>
+    MySQL ist nicht mehr automatisch aktiviert, Sie müssen die
+    <filename>php_mysql.dll</filename> DLL in Ihrer &php.ini; selbst
+    einbinden. PHP benötigt darüber hinaus Zugriff auf die MySQL
+    Client Bibliothek. Eine Datei mit Namen <filename>libmysql.dll</filename>
+    ist in der PHP Distribution für Windows enthalten, diese muss für Ihr
+    Windows System über <envar>PATH</envar> zu finden sein damit Sie aus
+    PHP heraus MySQL Datenbanken nutzen können.
+    Der FAQ-Eintrag "<link linkend="faq.installation.addtopath">Wie füge ich
+    unter Windows PATH mein PHP-Verzeichnis hinzu?</link>" bietet nähere
+    Informationen zu diesem Thema.
+    Sie können <filename>libmysql.dll</filename> zwar auch direkt in Ihr
+    Windows Systemverzeichnis kopieren (da dieses immer im <envar>PATH</envar>
+    Suchpfad enthalten ist), von diesem Vorgehen wird aber abgeraten.
+   </para>
+   <para>
+    Die PHP Direktive <link linkend="ini.extension-dir">extension_dir</link>
+    sollte, wie bei jeder anderen Erweiterung auch, auf das Verzeichnis
+    zeigen in dem die PHP Erweiterungen (wie <filename>php_mysql.dll</filename>)
+    zu finden sind. Sie hier auch <link linkend="install.windows.manual">Manuelle
+    Windows Installationsanweisungen</link>. Ein typischer Wert für ein PHP 5
+    extension_dir ist <literal>c:\php\ext</literal>
+   </para>
+   <note>
+    <para>
+     Erscheint beim Start des Webservers eine Fehlermelding in der Art von
+     <literal>"Unable to load dynamic library './php_mysql.dll'"</literal>
+     so liegt das daran das <filename>php_mysql.dll</filename> und/oder
+     <filename>libmysql.dll</filename> vom System nicht gefunden werden
+     konnten.
+    </para>
+   </note>
+  </section>
+  <section>
+    <title>PHP 5.3.0+</title>
+    <para>
+     Für MySQL 5.3.0 und spätere Versionen gelten
+     <link linkend="mysql.installation.linux.mysqlnd">diese Hinweise</link>
+     auch für Windows-Installationen
+    </para>
+  </section>
+ </section>
+
+ <section xml:id="mysql.installation.notes">
+  <title>MySQL Installationshinweise</title>
+   <warning>
+    <para>
+     Initialisierungsprobleme und Abstürze können vorkommen wenn Sie
+     diese Erweiterung zusammen mit der recode Erweiterung verwenden.
+     Nähere Informationen hierzu finden Sie im Handbuch-Abschnitt zu
+     <link linkend="ref.recode">recode</link>.
+    </para>
+   </warning>
+   <note>
+    <para>
+     Wenn Sie andere Zeichensätze als den Standard <emphasis>latin</emphasis>
+     Zeichensatz verwenden sollen so müssen Sie zum Erstellen der Erweiterung
+     eine externe libmysql verwenden die mit voller Zeichensatzunterstützung
+     erstellt wurde. Die mit PHP 4 mitgelieferte libmysql bietet dies nicht.
+    </para>
+   </note>
+ </section>
+</section>
+
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-omittag:t
+sgml-shorttag:t
+sgml-minimize-attributes:nil
+sgml-always-quote-attributes:t
+sgml-indent-step:1
+sgml-indent-data:t
+indent-tabs-mode:nil
+sgml-parent-document:nil
+sgml-default-dtd-file:"~/.phpdoc/manual.ced"
+sgml-exposed-tags:nil
+sgml-local-catalogs:nil
+sgml-local-ecat-files:nil
+End:
+vim600: syn=xml fen fdm=syntax fdl=2 si
+vim: et tw=78 syn=sgml
+vi: ts=1 sw=1
+-->


Property changes on: phpdoc/de/trunk/reference/mysql/configure.xml
___________________________________________________________________
Added: svn:keywords
   + Id Rev Revision Date LastChangedDate LastChangedRevision Author LastChangedBy HeadURL URL
Added: svn:eol-style
   + native
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.