cvs: phpdoc-de /language functions.xml
| From: | Hartmut Holzgraefe | Date: | Sat, 22 Mar 2008 17:18:51 +0000 |
| Subject: | cvs: phpdoc-de /language functions.xml | ||
| Groups: | php.doc.de | ||
| Request: | Send a blank email to doc-de+get-2601@lists.php.net to get a copy of this message | ||
hholzgra Sat Mar 22 17:18:51 2008 UTC
Modified files:
/phpdoc-de/language functions.xml
Log:
translation update (work in progres)
http://cvs.php.net/viewvc.cgi/phpdoc-de/language/functions.xml?r1=1.17&r2=1.18&diff_format=u Index: phpdoc-de/language/functions.xml diff -u phpdoc-de/language/functions.xml:1.17 phpdoc-de/language/functions.xml:1.18 --- phpdoc-de/language/functions.xml:1.17 Sat Jun 23 13:21:28 2007 +++ phpdoc-de/language/functions.xml Sat Mar 22 17:18:51 2008 @@ -1,6 +1,7 @@ <?xml version="1.0" encoding="iso-8859-1"?> -<!-- $Revision: 1.17 $ --> -<!-- EN-Revision: 1.33 Maintainer: tom Status: ready --> +<!-- $Revision: 1.18 $ --> +<!-- EN-Revision: 1.43 Maintainer: hholzgra Status: ready --> +<!-- Credits: tom --> <chapter xml:id="language.functions" xmlns="http://docbook.org/ns/docbook"> <title>Funktionen</title> @@ -9,18 +10,23 @@ <para> Eine Funktion kann wie folgt definiert werden: - - <informalexample> + </para> + + <para> + <example> + <title>Pseudokode zur Demonstration der Nutzung von Variablen</title> <programlisting role="php"> <![CDATA[ +<?php function foo ($arg_1, $arg_2, ..., $arg_n) { echo "Beispielfunktion.\n"; return $retval; } +?> ]]> </programlisting> - </informalexample> + </example> </para> <simpara> @@ -107,6 +113,13 @@ möglich, zuvor deklarierte Funktionen neu zu definieren oder die Definition zu löschen. </simpara> + <note> + <simpara> + Groß- und Kleinschreibung spielt zwar bei Funktionsnamen keine + Rolle, es empfiehlt sich aber trotzdem bei Funktionsaufrufen + die gleiche Schreibweise wie in der Deklaration zu benutzen. + </simpara> + </note> <simpara> PHP 3 unterstützt keine variable Anzahl von Parametern, obwohl Vorgabewerte für Parameter unterstützt werden @@ -143,17 +156,22 @@ <function>func_get_args</function> für weitere Informationen. Durch die Übergabe eines Arrays mit Parametern kann man auch in PHP 3 einen ähnlichen Effekt erreichen: - - <informalexample> + </para> + + <para> + <example> + <title>Arrays an Funktionen übergeben</title> <programlisting role="php"> <![CDATA[ +>?php function rechne_array($eingabe) { echo "$eingabe[0] + $eingabe[1] = ", $eingabe[0]+$eingabe[1]; } +?> ]]> </programlisting> - </informalexample> + </example> </para> <sect2 xml:id="functions.arguments.by-reference"> @@ -171,10 +189,14 @@ Wenn eine Funktion einen Parameter generell als Verweis behandeln soll, setzt man in der Funktionsdefinition ein kaufmännisches Und (&) vor den Parameternamen: - - <informalexample> + </para> + + <para> + <example> + <title>Passing function parameters by reference</title> <programlisting role="php"> <![CDATA[ +<?php function fuege_etwas_anderes_an (&$string) { $string .= 'und nun zu etwas anderem.'; @@ -182,9 +204,10 @@ $str = 'Dies ist ein String, '; fuege_etwas_anderes_an ($str); echo $str; // Ausgabe: 'Dies ist ein String, und nun zu etwas anderem.' +?> ]]> </programlisting> - </informalexample> + </example> </para> </sect2> @@ -195,19 +218,24 @@ <para> Eine Funktion kann C++-artige Vorgabewerte für skalare Parameter wie folgt definieren: - - <informalexample> + </para> + + <para> + <example> + <title>Einsatz von Vorgabeparametern</title> <programlisting role="php"> <![CDATA[ +<?php function machkaffee ($typ = "Cappucino") { return "Ich mache eine Tasse $typ.\n"; } echo machkaffee (); echo machkaffee ("Espresso"); +?> ]]> </programlisting> - </informalexample> + </example> </para> <para> @@ -221,51 +249,65 @@ <simpara> Der Vorgabewert muss ein konstanter Ausdruck sein, darf also (zum - Beispiel) keine Variable oder Element einer Klasse sein. + Beispiel) keine Variable, Eigenschaft einer Klasse oder + Funktionsaufruf sein. </simpara> <para> Bitte beachten Sie, dass alle Vorgabewerte rechts von den Nicht-Vorgabeparametern stehen sollten; - sonst wird es nicht funktionieren. Betrachten Sie folgendes Beispiel: + </para> - <informalexample> + <para> + <example> + <title>Ungüötige Anwendung von Vorgabewerten</title> <programlisting role="php"> <![CDATA[ +<?php function mach_joghurt ($typ = "rechtsdrehendes", $geschmack) { return "Mache einen Becher $typ $geschmack-joghurt.\n"; } echo mach_joghurt ("Brombeer"); // arbeitet nicht wie erwartet +?> ]]> </programlisting> - </informalexample> + </example> </para> <para> Die Ausgabe dieses Beispiels ist:: + </para> + <para> <screen> Warning: Missing argument 2 in call to makeyogurt() in /usr/local/etc/httpd/htdocs/php3test/functest.html on line 41 Mache einen Becher Brombeer-joghurt. - </screen></para> + </screen> + </para> <para> Nun vergleichen Sie bitte oberes Beispiel mit folgendem: - - <informalexample> + </para> + + <para> + <example> + <title>Richtiger Einsatz von Vorgabewerten</title> <programlisting role="php"> <![CDATA[ +<?php function mach_joghurt ($geschmack, $typ = "rechtsdrehendes") { return "Mache einen Becher $typ $geschmack-joghurt.\n"; } echo mach_joghurt ("Brombeer"); // arbeitet wie erwartet. +?> ]]> </programlisting> - </informalexample> + </example> </para> <para> @@ -280,7 +322,7 @@ <sect2 xml:id="functions.variable-arg-list"> <title>Variable Anzahl von Parametern</title> - + <simpara> PHP 4 unterstützt eine variable Anzahl von Parametern in benutzerdefinierten Funktionen. Das Handling dieser Parameter @@ -308,52 +350,70 @@ oder Objekte. Die beendet sofort die Funktion, und die Kontrolle wird wieder an die aufrufende Zeile zurückgegeben. Weitere Informationen finden Sie unter <function>return</function>. - <informalexample> + </para> + + <para> + <example> + <title>Einsatz von <function>return</function></title> <programlisting role="php"> <![CDATA[ +<?php function quadrat ($zahl) { return $zahl * $zahl; } echo quadrat (4); // gibt '16' aus. + +?> ]]> </programlisting> - </informalexample> + </example> </para> <para> Es ist nicht möglich, mehrere Werte von einer Funktion zurückzugeben. Ein ähnliches Resultat kann man aber durch die Rückgabe von Listen erreichen. + </para> - <informalexample> + <para> + <example> + <title>Rückgabe mehrere Werte in Arrays</title> <programlisting role="php"> <![CDATA[ +<?php function kleine_zahlen() { return array (0, 1, 2); } list ($null, $eins, $zwei) = kleine_zahlen(); +?> ]]> </programlisting> - </informalexample> + </example> </para> <para> Um von einer Funktion eine Referenz zurückzugeben, müssen Sie den Referenz-Operator & sowohl in der Funktionsdeklaration, als auch bei der Zuweisung des zurückgegebenen Wertes verwenden: - <informalexample> + </para> + + <para> + <example> + <title>Rückgabe von Referenzen</title> <programlisting role="php"> <![CDATA[ +<?php function &returniere_referenz() { return $einereferenz; } $neuereferenz =& returniere_referenz(); +?> ]]> </programlisting> - </informalexample> + </example> </para> <simpara> Weitere Informationen über Referenzen finden Sie im Kapitel @@ -361,33 +421,6 @@ </simpara> </sect1> - <sect1 xml:id="functions.old-syntax"> - <title><literal>old_function</literal></title> - - <simpara> - Der Befehl <literal>old_function</literal> erlaubt es, eine - Funktion genauso wie bei PHP/FI2 zu definieren (nur "function" - wird durch "old_function" ersetzt. - </simpara> - <simpara> - Dieser Befehl sollte nur vom PHP/FI2->PHP3-Konverter genutzt - werden. - </simpara> - <warning> - <para> - Funktionen, die durch <literal>old_function</literal> definiert - werden, können nicht von PHP selbst aufgerufen werden. Das heißt - unter anderem, dass sie nicht in Funktionen wie <function>usort - </function>, <function>array_walk</function> und <function> - register_shutdown_function</function> benutzt werden können. - Dieses Manko können Sie umgehen, indem Sie eine Adapterfunktion - (in normalem PHP3) schreiben, welche die - <literal>old_function</literal> aufruft. - </para> - </warning> - - </sect1> - <sect1 xml:id="functions.variable-functions"> <title>Variablenfunktionen</title> @@ -452,7 +485,7 @@ <?php class Foo { - function Var() + function Variable() { $name = 'Bar'; $this->$name(); // Dies ruft die Bar() Methode auf @@ -465,8 +498,8 @@ } $foo = new Foo(); -$funcname = "Var"; -$foo->$funcname(); // Dies ruft $foo->Var() auf +$funcname = "Variable"; +$foo->$funcname(); // Dies ruft $foo->Variable() auf ?> ]]> @@ -479,6 +512,57 @@ Variable Variablen</link> und <function>function_exists</function>. </para> </sect1> + + + <sect1 xml:id="functions.internal"> + <title>Interne (eingebaute) Funktionen</title> + + <para> + PHP enthält standmäßig viele Funktionen und Konstrukte, weiterhin + gibt es viele Funktionen die vorausssetzen dass bestimmte PHP + Extensions einkompiliert wurden, anderenfalls erhalten Sie beim + Aufruf "undefined function" Fehlermeldungen. + Um z.B. <link linkend="ref.image">Grafik-Funktionen</link> wie + <function>imagecreatetruecolor</function> müssen Sie PHP mit + GD Unterstützung kompilieren, oder um <function>mysql_connect</function> + zu Nutzen muss Ihr PHP mit <link linkend="ref.mysql">MySQL</link> + UNterstützung compiliert sein. + Viele Kernfunktionen wie z.B. die <link linkend="ref.strings" + >String</link>- und <link linkend="ref.variables">Variablen</link + >-Funktionen sind bereits in jeder PHP Version enthalten. + Ein Aufruf von <function>phpinfo</function> oder <function + >get_loaded_extensions</function> zeigt Ihnen welche Extensions + in Ihrer PHP Installation verfügbar sind. + Beachten Sie weiterhin das viele Extensions bereits standardmäßig + aktiviert sind und das PHP Manual nach Extensions unterteilt ist. + Weitere Informationen zur Einrichtung von PHP finden Sie in den + Kapiteln <link linkend="configuration">konfiguration</link>, + <link linkend="Installation">installation</link> und den Kapiteln + zu den einzelnen Extensions. + </para> + <para> + Wie Funktionsprototypen zu lesen und zu verstehen sind ist im + Kapitel '<link linkend="about.prototypes">Wie man eine Funktionsdefinition + (Prototyp) liest'</link> erklärt. + Es ist wichtig zu erkennen was eine Funktion zurückgibt und ob + die übergebenen Parameter verändert werden. So gibt z.B. + <function>str_replace</function> den bearbeiteten String zurück + während <function>usort</function> direkt auf der übergebenen + Variablen arbeitet. + itself. + Jede Handbuchseite enthält spezifische Informatione für jede + Funktion wie ihre Parameter, Rückgabewerte sowohl bei Erfolg + als auch im Fehlerfall, Änderungen des Verhaltens und Verfügbarkeit. + Kenntniss dieser wichtigen (und oft subtilen) Unterschiede ist + von entscheidender Bedeutung für das Schreiben korekten PHP Kodes. + </para> + <para> + Siehe auch <function>function_exists</function>, + <link linkend="funcref">the function reference</link>, + <function>get_extension_funcs</function> und + <function>dl</function>. + </para> + </sect1> </chapter> <!-- Keep this comment at the end of the file
http://cvs.php.net/viewvc.cgi/phpdoc-de/language/functions.xml?r1=1.17&r2=1.18&diff_format=u Index: phpdoc-de/language/functions.xml diff -u phpdoc-de/language/functions.xml:1.17 phpdoc-de/language/functions.xml:1.18 --- phpdoc-de/language/functions.xml:1.17 Sat Jun 23 13:21:28 2007 +++ phpdoc-de/language/functions.xml Sat Mar 22 17:18:51 2008 @@ -1,6 +1,7 @@ <?xml version="1.0" encoding="iso-8859-1"?> -<!-- $Revision: 1.17 $ --> -<!-- EN-Revision: 1.33 Maintainer: tom Status: ready --> +<!-- $Revision: 1.18 $ --> +<!-- EN-Revision: 1.43 Maintainer: hholzgra Status: ready --> +<!-- Credits: tom --> <chapter xml:id="language.functions" xmlns="http://docbook.org/ns/docbook"> <title>Funktionen</title> @@ -9,18 +10,23 @@ <para> Eine Funktion kann wie folgt definiert werden: - - <informalexample> + </para> + + <para> + <example> + <title>Pseudokode zur Demonstration der Nutzung von Variablen</title> <programlisting role="php"> <![CDATA[ +<?php function foo ($arg_1, $arg_2, ..., $arg_n) { echo "Beispielfunktion.\n"; return $retval; } +?> ]]> </programlisting> - </informalexample> + </example> </para> <simpara> @@ -107,6 +113,13 @@ möglich, zuvor deklarierte Funktionen neu zu definieren oder die Definition zu löschen. </simpara> + <note> + <simpara> + Groß- und Kleinschreibung spielt zwar bei Funktionsnamen keine + Rolle, es empfiehlt sich aber trotzdem bei Funktionsaufrufen + die gleiche Schreibweise wie in der Deklaration zu benutzen. + </simpara> + </note> <simpara> PHP 3 unterstützt keine variable Anzahl von Parametern, obwohl Vorgabewerte für Parameter unterstützt werden @@ -143,17 +156,22 @@ <function>func_get_args</function> für weitere Informationen. Durch die Übergabe eines Arrays mit Parametern kann man auch in PHP 3 einen ähnlichen Effekt erreichen: - - <informalexample> + </para> + + <para> + <example> + <title>Arrays an Funktionen übergeben</title> <programlisting role="php"> <![CDATA[ +>?php function rechne_array($eingabe) { echo "$eingabe[0] + $eingabe[1] = ", $eingabe[0]+$eingabe[1]; } +?> ]]> </programlisting> - </informalexample> + </example> </para> <sect2 xml:id="functions.arguments.by-reference"> @@ -171,10 +189,14 @@ Wenn eine Funktion einen Parameter generell als Verweis behandeln soll, setzt man in der Funktionsdefinition ein kaufmännisches Und (&) vor den Parameternamen: - - <informalexample> + </para> + + <para> + <example> + <title>Passing function parameters by reference</title> <programlisting role="php"> <![CDATA[ +<?php function fuege_etwas_anderes_an (&$string) { $string .= 'und nun zu etwas anderem.'; @@ -182,9 +204,10 @@ $str = 'Dies ist ein String, '; fuege_etwas_anderes_an ($str); echo $str; // Ausgabe: 'Dies ist ein String, und nun zu etwas anderem.' +?> ]]> </programlisting> - </informalexample> + </example> </para> </sect2> @@ -195,19 +218,24 @@ <para> Eine Funktion kann C++-artige Vorgabewerte für skalare Parameter wie folgt definieren: - - <informalexample> + </para> + + <para> + <example> + <title>Einsatz von Vorgabeparametern</title> <programlisting role="php"> <![CDATA[ +<?php function machkaffee ($typ = "Cappucino") { return "Ich mache eine Tasse $typ.\n"; } echo machkaffee (); echo machkaffee ("Espresso"); +?> ]]> </programlisting> - </informalexample> + </example> </para> <para> @@ -221,51 +249,65 @@ <simpara> Der Vorgabewert muss ein konstanter Ausdruck sein, darf also (zum - Beispiel) keine Variable oder Element einer Klasse sein. + Beispiel) keine Variable, Eigenschaft einer Klasse oder + Funktionsaufruf sein. </simpara> <para> Bitte beachten Sie, dass alle Vorgabewerte rechts von den Nicht-Vorgabeparametern stehen sollten; - sonst wird es nicht funktionieren. Betrachten Sie folgendes Beispiel: + </para> - <informalexample> + <para> + <example> + <title>Ungüötige Anwendung von Vorgabewerten</title> <programlisting role="php"> <![CDATA[ +<?php function mach_joghurt ($typ = "rechtsdrehendes", $geschmack) { return "Mache einen Becher $typ $geschmack-joghurt.\n"; } echo mach_joghurt ("Brombeer"); // arbeitet nicht wie erwartet +?> ]]> </programlisting> - </informalexample> + </example> </para> <para> Die Ausgabe dieses Beispiels ist:: + </para> + <para> <screen> Warning: Missing argument 2 in call to makeyogurt() in /usr/local/etc/httpd/htdocs/php3test/functest.html on line 41 Mache einen Becher Brombeer-joghurt. - </screen></para> + </screen> + </para> <para> Nun vergleichen Sie bitte oberes Beispiel mit folgendem: - - <informalexample> + </para> + + <para> + <example> + <title>Richtiger Einsatz von Vorgabewerten</title> <programlisting role="php"> <![CDATA[ +<?php function mach_joghurt ($geschmack, $typ = "rechtsdrehendes") { return "Mache einen Becher $typ $geschmack-joghurt.\n"; } echo mach_joghurt ("Brombeer"); // arbeitet wie erwartet. +?> ]]> </programlisting> - </informalexample> + </example> </para> <para> @@ -280,7 +322,7 @@ <sect2 xml:id="functions.variable-arg-list"> <title>Variable Anzahl von Parametern</title> - + <simpara> PHP 4 unterstützt eine variable Anzahl von Parametern in benutzerdefinierten Funktionen. Das Handling dieser Parameter @@ -308,52 +350,70 @@ oder Objekte. Die beendet sofort die Funktion, und die Kontrolle wird wieder an die aufrufende Zeile zurückgegeben. Weitere Informationen finden Sie unter <function>return</function>. - <informalexample> + </para> + + <para> + <example> + <title>Einsatz von <function>return</function></title> <programlisting role="php"> <![CDATA[ +<?php function quadrat ($zahl) { return $zahl * $zahl; } echo quadrat (4); // gibt '16' aus. + +?> ]]> </programlisting> - </informalexample> + </example> </para> <para> Es ist nicht möglich, mehrere Werte von einer Funktion zurückzugeben. Ein ähnliches Resultat kann man aber durch die Rückgabe von Listen erreichen. + </para> - <informalexample> + <para> + <example> + <title>Rückgabe mehrere Werte in Arrays</title> <programlisting role="php"> <![CDATA[ +<?php function kleine_zahlen() { return array (0, 1, 2); } list ($null, $eins, $zwei) = kleine_zahlen(); +?> ]]> </programlisting> - </informalexample> + </example> </para> <para> Um von einer Funktion eine Referenz zurückzugeben, müssen Sie den Referenz-Operator & sowohl in der Funktionsdeklaration, als auch bei der Zuweisung des zurückgegebenen Wertes verwenden: - <informalexample> + </para> + + <para> + <example> + <title>Rückgabe von Referenzen</title> <programlisting role="php"> <![CDATA[ +<?php function &returniere_referenz() { return $einereferenz; } $neuereferenz =& returniere_referenz(); +?> ]]> </programlisting> - </informalexample> + </example> </para> <simpara> Weitere Informationen über Referenzen finden Sie im Kapitel @@ -361,33 +421,6 @@ </simpara> </sect1> - <sect1 xml:id="functions.old-syntax"> - <title><literal>old_function</literal></title> - - <simpara> - Der Befehl <literal>old_function</literal> erlaubt es, eine - Funktion genauso wie bei PHP/FI2 zu definieren (nur "function" - wird durch "old_function" ersetzt. - </simpara> - <simpara> - Dieser Befehl sollte nur vom PHP/FI2->PHP3-Konverter genutzt - werden. - </simpara> - <warning> - <para> - Funktionen, die durch <literal>old_function</literal> definiert - werden, können nicht von PHP selbst aufgerufen werden. Das heißt - unter anderem, dass sie nicht in Funktionen wie <function>usort - </function>, <function>array_walk</function> und <function> - register_shutdown_function</function> benutzt werden können. - Dieses Manko können Sie umgehen, indem Sie eine Adapterfunktion - (in normalem PHP3) schreiben, welche die - <literal>old_function</literal> aufruft. - </para> - </warning> - - </sect1> - <sect1 xml:id="functions.variable-functions"> <title>Variablenfunktionen</title> @@ -452,7 +485,7 @@ <?php class Foo { - function Var() + function Variable() { $name = 'Bar'; $this->$name(); // Dies ruft die Bar() Methode auf @@ -465,8 +498,8 @@ } $foo = new Foo(); -$funcname = "Var"; -$foo->$funcname(); // Dies ruft $foo->Var() auf +$funcname = "Variable"; +$foo->$funcname(); // Dies ruft $foo->Variable() auf ?> ]]> @@ -479,6 +512,57 @@ Variable Variablen</link> und <function>function_exists</function>. </para> </sect1> + + + <sect1 xml:id="functions.internal"> + <title>Interne (eingebaute) Funktionen</title> + + <para> + PHP enthält standmäßig viele Funktionen und Konstrukte, weiterhin + gibt es viele Funktionen die vorausssetzen dass bestimmte PHP + Extensions einkompiliert wurden, anderenfalls erhalten Sie beim + Aufruf "undefined function" Fehlermeldungen. + Um z.B. <link linkend="ref.image">Grafik-Funktionen</link> wie + <function>imagecreatetruecolor</function> müssen Sie PHP mit + GD Unterstützung kompilieren, oder um <function>mysql_connect</function> + zu Nutzen muss Ihr PHP mit <link linkend="ref.mysql">MySQL</link> + UNterstützung compiliert sein. + Viele Kernfunktionen wie z.B. die <link linkend="ref.strings" + >String</link>- und <link linkend="ref.variables">Variablen</link + >-Funktionen sind bereits in jeder PHP Version enthalten. + Ein Aufruf von <function>phpinfo</function> oder <function + >get_loaded_extensions</function> zeigt Ihnen welche Extensions + in Ihrer PHP Installation verfügbar sind. + Beachten Sie weiterhin das viele Extensions bereits standardmäßig + aktiviert sind und das PHP Manual nach Extensions unterteilt ist. + Weitere Informationen zur Einrichtung von PHP finden Sie in den + Kapiteln <link linkend="configuration">konfiguration</link>, + <link linkend="Installation">installation</link> und den Kapiteln + zu den einzelnen Extensions. + </para> + <para> + Wie Funktionsprototypen zu lesen und zu verstehen sind ist im + Kapitel '<link linkend="about.prototypes">Wie man eine Funktionsdefinition + (Prototyp) liest'</link> erklärt. + Es ist wichtig zu erkennen was eine Funktion zurückgibt und ob + die übergebenen Parameter verändert werden. So gibt z.B. + <function>str_replace</function> den bearbeiteten String zurück + während <function>usort</function> direkt auf der übergebenen + Variablen arbeitet. + itself. + Jede Handbuchseite enthält spezifische Informatione für jede + Funktion wie ihre Parameter, Rückgabewerte sowohl bei Erfolg + als auch im Fehlerfall, Änderungen des Verhaltens und Verfügbarkeit. + Kenntniss dieser wichtigen (und oft subtilen) Unterschiede ist + von entscheidender Bedeutung für das Schreiben korekten PHP Kodes. + </para> + <para> + Siehe auch <function>function_exists</function>, + <link linkend="funcref">the function reference</link>, + <function>get_extension_funcs</function> und + <function>dl</function>. + </para> + </sect1> </chapter> <!-- Keep this comment at the end of the file