tom             Sun Mar  3 05:23:39 2002 EDT

  Modified files:              
    /phpdoc/de/functions        filesystem.xml 
  Log:
  Transl. is actual now
  
Index: phpdoc/de/functions/filesystem.xml
diff -u phpdoc/de/functions/filesystem.xml:1.33 phpdoc/de/functions/filesystem.xml:1.34
--- phpdoc/de/functions/filesystem.xml:1.33     Sat Feb  2 10:34:01 2002
+++ phpdoc/de/functions/filesystem.xml  Sun Mar  3 05:23:39 2002
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="iso-8859-1"?>
-<!-- EN-Revision: 1.84 Maintainer: tom Status: ready -->
+<!-- EN-Revision: 1.126 Maintainer: tom Status: ready -->
 <reference id="ref.filesystem">
   <title>Funktionen des Dateisystems</title>
   <titleabbrev>Filesystem</titleabbrev>
@@ -34,9 +34,11 @@
      <example>
       <title><function>basename</function></title>
       <programlisting role="php">
+<![CDATA[
 $path = "/home/httpd/html/index.php";
 $file = basename($path);         // $file enth�lt den Wert "index.php"
 $file = basename ($path,".php"); // $file enth�lt den Wert "index"
+]]>
       </programlisting>
      </example>
     </para>
@@ -55,9 +57,7 @@
   <refentry id="function.chgrp">
    <refnamediv>
     <refname>chgrp</refname>
-    <refpurpose>
-     Wechselt die Gruppenzugeh�rigkeit einer Datei
-    </refpurpose>
+    <refpurpose>Wechselt die Gruppenzugeh�rigkeit einer Datei</refpurpose>
    </refnamediv>
    <refsect1>
     <title>Beschreibung</title>
@@ -67,23 +67,20 @@
       <methodparam><type>mixed</type><parameter>group</parameter></methodparam>
      </methodsynopsis>
     <para>
-     Weist einer Datei eine Benutzergruppe zu. Um diese Funktion
-     ausf�hren zu k�nnen, m�ssen Sie Superuser sein. Andere Benutzer
-     k�nnen die Gruppenzugeh�rigkeit einer Datei in jede Gruppe
+     Weist der Datei <parameter>filename</parameter> die Benutzergruppe
+     <parameter>group</parameter> zu (spezifiziert durch Name oder Nummer). Um
+     diese Funktion ausf�hren zu k�nnen, m�ssen Sie Superuser sein. Andere
+     Benutzer k�nnen die Gruppenzugeh�rigkeit einer Datei in jede Gruppe
      �ndern, derer sie angeh�ren.
     </para>
     <para>
      Gibt bei Erfolg &true; zur�ck, andernfalls &false;.
     </para>
-    <note>
-     <para>
-      Unter Windows-Systemen bleibt diese Funktion ohne Effekt.
-     </para>
-    </note>
     <para>
      Siehe auch <function>chown</function> und
      <function>chmod</function>.
     </para>
+    &note.no-windows;
    </refsect1>
   </refentry>
 
@@ -111,24 +108,22 @@
      <parameter>mode</parameter> mit dem Prefix &null; (0) versehen:
      <informalexample>
       <programlisting role="php">
+<![CDATA[
 chmod ("/somedir/somefile", 755);   // dezimal; m�glicherweise falsch
 chmod ("/somedir/somefile", "u+rwx,go+rx"); // String; falsch       
 chmod ("/somedir/somefile", 0755);  // oktal; richtiger Wert von mode
+]]>
       </programlisting>
      </informalexample>
     </para>
     <para>
-     Gibt &true; bei Erfolg zur�ck, andernfalls &false;.     
+     Gibt &true; bei Erfolg zur�ck, andernfalls &false;.
     </para>
     <para>
      Siehe auch <function>chown</function> und
      <function>chgrp</function>.
     </para>
-    <note>
-     <simpara>
-      Diese Funktion bleibt unter Windows-Systemen ohne Effekt.
-     </simpara>
-    </note>
+    &note.no-windows;
    </refsect1>
   </refentry>
 
@@ -151,16 +146,12 @@
     </para>
     <para>
      Gibt bei Erfolg &true; zur�ck, andernfalls &false;.
-     <note>
-      <simpara>
-       Unter Windows bleibt diese Funktion ohne Effekt.
-      </simpara>
-     </note>
     </para>
     <para>
      Siehe auch <function>chown</function> und
      <function>chmod</function>.
     </para>
+    &note.no-windows;
    </refsect1>
   </refentry>
 
@@ -228,14 +219,24 @@
      <example>
       <title><function>copy</function></title>
       <programlisting role="php">
-if (!copy ($file, $file.'.bak')) {
-    print ("failed to copy $file...&lt;br>\n");
+<![CDATA[
+if (!copy($file, $file.'.bak')) {
+    print ("failed to copy $file...<br>\n");
 }
+]]>
       </programlisting>
      </example>
     </para>
+    <warning>
+     <para>
+      Sollte die Zieldatei bereits existieren, wird sie �berschrieben.
+     </para>
+    </warning>
     <para>
-     Siehe auch: <function>rename</function>.
+     Siehe auch <function>move_uploaded_file</function>,
+     <function>rename</function>, und den Abschnitt �ber
+     <link linkend="features.file-upload">Steuerung von
+     Dateiuploads</link>.
     </para>
    </refsect1>
   </refentry>
@@ -291,20 +292,36 @@
      <example>
       <title><function>dirname</function></title>
       <programlisting role="php">
+<![CDATA[
 $path = "/etc/passwd";
 $file = dirname ($path); // $file enth�lt den Wert "/etc"
+]]>
       </programlisting>
      </example>
     </para>
+    <note>
+     <para>
+      Seit PHP 4.0.3 entspricht <function>dirname</function> dem
+      POSIX-Standard. Im Grunde hei�t das, dass wenn keine Slashes
+      in <parameter>path</parameter> vorhanden sind, wird ein Punkt
+      ('<literal>.</literal>') zur�ckgegeben, womit das aktuelle
+      Verzeichnis gemeint ist. Andernfalls enth�lt der zur�ckgegebene
+      String <parameter>path</parameter>, jedoch ohne den hinteren
+      <literal>/component</literal>. Beachten Sie, dass Sie von
+      <function>dirname</function> oft einen Slash oder Punkt
+      zur�ckbekommen, wo die alte Funktionalit�t einen leeren String
+      lieferte.
+     </para>
+    </note>
     <para>
      Siehe auch <function>basename</function>.
     </para>
    </refsect1>
   </refentry>
 
-  <refentry id="function.diskfreespace">
+  <refentry id="function.disk-free-space">
    <refnamediv>
-    <refname>diskfreespace</refname>
+    <refname>disk_free_space</refname>
     <refpurpose>
      Liefert den freien Speicherplatz in einem Verzeichnis
     </refpurpose>
@@ -312,7 +329,7 @@
    <refsect1>
     <title>Beschreibung</title>
      <methodsynopsis>
-      <type>float</type><methodname>diskfreespace</methodname>
+      <type>float</type><methodname>disk_free_space</methodname>
       <methodparam><type>string</type><parameter>directory</parameter></methodparam>
      </methodsynopsis>
     <para>
@@ -321,16 +338,36 @@
     </para>
     <para>
      <example>
-      <title><function>diskfreespace</function></title>
+      <title><function>disk_free_space</function></title>
       <programlisting role="php">
-$df = diskfreespace("/"); // $df h�lt die Anzahl an freien Bytes 
-                          // im Verzeichnis  "/"
+<![CDATA[
+$df = disk_free_space("/"); // $df h�lt die Anzahl an freien Bytes 
+                            // im Verzeichnis  "/"
+]]>
       </programlisting>
      </example>
     </para>
    </refsect1>
   </refentry>
 
+  <refentry id="function.diskfreespace">
+   <refnamediv>
+    <refname>diskfreespace</refname>
+    <refpurpose>Ist ein Alias f�r <function>disk_free_space</function></refpurpose>
+   </refnamediv>
+   <refsect1>
+    <title>Beschreibung</title>
+     <methodsynopsis>
+      <type>float</type><methodname>diskfreespace</methodname>
+      <methodparam><type>string</type><parameter>directory</parameter></methodparam>
+     </methodsynopsis>
+    <para>
+     Von diesem Alias wird abgeraten, benutzen Sie stattdessen
+     <function>disk_free_space</function>.
+    </para>
+   </refsect1>
+  </refentry>
+
   <refentry id="function.disk-total-space">
    <refnamediv>
     <refname>disk_total_space</refname>
@@ -351,8 +388,10 @@
      <example>
       <title><function>disk_total_space</function></title>
       <programlisting role="php">
+<![CDATA[
 $df = disk_total_space("/"); // $df enth�lt die Gesamtanzahl 
                              // verf�gbarer Bytes in "/"
+]]>
       </programlisting>
      </example>
     </para>
@@ -367,7 +406,7 @@
    <refsect1>
     <title>Beschreibung</title>
      <methodsynopsis>
-      <type>int</type><methodname>fclose</methodname>
+      <type>bool</type><methodname>fclose</methodname>
       <methodparam><type>int</type><parameter>fp</parameter></methodparam>
      </methodsynopsis>
     <para>
@@ -381,7 +420,7 @@
     <para>
      Der Datei-Zeiger muss g�ltig sein, d.h. die Datei, auf die
      gezeigt wird muss zuvor mit <function>fopen</function>
-     oder <function>fsockopen</function> ge�ffnet worden sein.  
+     oder <function>fsockopen</function> ge�ffnet worden sein.
     </para>
    </refsect1>
   </refentry>
@@ -461,7 +500,7 @@
      <function>popen</function> oder <function>fsockopen</function>
      ge�ffnet worden sein.
     </para>
-    <para> 
+    <para>
      Siehe auch <function>fread</function>,
      <function>fopen</function>, <function>popen</function>,
      <function>fsockopen</function> und <function>fgets</function>.
@@ -484,7 +523,7 @@
       <methodparam><type>int</type><parameter>fp</parameter></methodparam>
       <methodparam><type>int</type><parameter>length</parameter></methodparam>
       <methodparam choice="opt"><type>string</type><parameter>
-        Trennzeichen (Delimiter)
+        delimiter
        </parameter></methodparam>
      </methodsynopsis>
     <simpara>
@@ -522,6 +561,7 @@
       Inhalts einer CSV-Datei
      </title>
      <programlisting role="php">
+<![CDATA[
 $row = 1;                                  // Anzahl der Arrays
 $fp = fopen ("test.csv","r");              // Datei wird zum Lesen 
                                            // ge�ffnet
@@ -529,14 +569,15 @@
                                            // in einen Array $data gelesen
     $num = count ($data);                  // Felder im Array $data 
                                            // werden gez�hlt
-    print "&lt;p&gt; $num fields in line $row: &lt;br&gt;"; 
+    print "<p> $num fields in line $row: <br>";
     $row++;                                // Anzahl der Arrays wird 
                                            // inkrementiert
-    for ($c=0; $c&lt;$num; $c++) {         // FOR-Schleife, um Felder 
-        print $data[$c] . "&lt;br&gt;";    // des Arrays auszugeben
+    for ($c=0; $c < $num; $c++) {          // FOR-Schleife, um Felder 
+        print $data[$c] . "<br>";          // des Arrays auszugeben
     }
 }
 fclose ($fp);
+]]>
      </programlisting>
     </example>
    </refsect1>
@@ -561,8 +602,9 @@
      L�nge zur�ck, welche aus der Datei von der aktuellen Position des 
      Dateizeigers <parameter>fp</parameter> aus ausgelesen wird. Die 
      Zeile endet an einem Zeilenumbruch (welcher im R�ckgabewert enthalten 
-     ist), EOF (Ende der Datei) oder bei <parameter>length</parameter> 
-     - 1 Bytes (Je nachdem, was eher auftritt).
+     ist), EOF (Ende der Datei) oder bei <parameter>length</parameter>
+     - 1 Bytes (Je nachdem, was eher auftritt). Ist keine L�nge angegeben,
+     wird diese auf 1k bzw. 1024 Bytes gesetzt.
     </para>
     <para>
      Wenn ein Fehler auftritt, wird &false; zur�ckgegeben.
@@ -571,32 +613,39 @@
      H�ufig auftretende Fehler:
     </para>
     <simpara>
-     Wenn Sie an die C-Semantik von fgets gew�hnt sind, sollten
-     Sie auf die unterschiedliche Behandlung von EOF (genauer:
-     wie EOF zur�ckgegeben wird) achten. 
+     Wenn Sie an die C-Semantik von <function>fgets</function> gew�hnt sind,
+     sollten Sie auf die unterschiedliche Behandlung von <literal>EOF</literal>
+     (genauer: wie EOF zur�ckgegeben wird) achten.
     </simpara>
     <simpara>
      Der Datei-Zeiger <parameter>fp</parameter> muss g�ltig sein,
      d.h. die Datei, auf die gezeigt wird, muss zuvor mit
-     <function>fopen</function>, <function>popen</function> oder
+     <function>fopen</function>, <function>popen</function>, oder
      <function>fsockopen</function> ge�ffnet worden sein.
     </simpara>
     <para>
      Ein einfaches Beispiel:
-     <example> 
+     <example>
       <title>Eine Datei Zeile f�r Zeile einlesen</title>
       <programlisting role="php">
+<![CDATA[
 $fd = fopen ("/tmp/inputfile.txt", "r");
 while (!feof($fd)) {
     $buffer = fgets($fd, 4096);
     echo $buffer;
 }
 fclose ($fd);
+]]>
       </programlisting>
      </example>
     </para>
-    <para> 
-     Siehe auch <function>fread</function>, <function>fopen</function>, 
+    <note>
+     <simpara>
+      Der Parameter <parameter>length</parameter> wurde erst ab PHP 4.2.0 optional.
+     </simpara>
+    </note>
+    <para>
+     Siehe auch <function>fread</function>, <function>fopen</function>,
      <function>popen</function>, <function>fgetc</function>,
      <function>fsockopen</function>, und 
      <function>socket_set_timeout</function>.
@@ -634,8 +683,8 @@
      die nicht entfernt werden sollen.
      <note>
       <para>
-       <parameter>allowable_tags</parameter> wurden in PHP 3.0.13
-       hinzugef�gt, PHP4B3.  
+       <parameter>allowable_tags</parameter> wurden in PHP 3.0.13 bzw.
+       PHP 4.0.0 hinzugef�gt.
       </para>
      </note>
     </para>
@@ -649,7 +698,7 @@
 
   <refentry id="function.file">
    <refnamediv>
-    <refname>file</refname> 
+    <refname>file</refname>
     <refpurpose>
      Liest eine Datei komplett in einen Array
     </refpurpose>
@@ -661,13 +710,19 @@
       <methodparam><type>string</type><parameter>filename</parameter></methodparam>
       <methodparam 
choice="opt"><type>int</type><parameter>use_include_path</parameter></methodparam>
      </methodsynopsis>
-    <para> 
-     Die Funktion <function>file</function> ist identisch mit der
-     Funktion <function>readfile</function>, bis auf den Umstand, das
-     die eingelesene Datei als Array zur�ckgegeben wird. Jedes Feld
-     des Arrays korrespondiert mit einer Zeile der Datei. Der
-     Zeilenumbruch bleibt erhalten.
+    <para>
+     Die Funktion <function>file</function> ist identisch mit
+     <function>readfile</function>, au�er dass die eingelesene Datei
+     als Array zur�ckgegeben wird. Jedes Feld des Arrays korrespondiert
+     mit einer Zeile der Datei. Der Zeilenumbruch bleibt erhalten.
     </para>
+    <note>
+     <para>
+      Jede Zeile in dem resultierenden Array enth�lt das Zeilenende ('\0'),
+      weshalb Sie <function>trim</function> verwenden m�ssen, falls Sie
+      dieses Zeichen nicht vorhanden sein soll.
+     </para>
+    </note>
     <para>
      Optional kann der zweite Parameter benutzt und auf '1' gesetzt
      werden, wenn in dem <link
@@ -677,20 +732,24 @@
     <para>
      <informalexample>
       <programlisting role="php">
-&lt;?php
+<![CDATA[
+<?php
 // liest eine Webseite in einen Array und gibt das Ergebnis aus
-$fcontents = file ('http://www.php.net');
+$fcontents = file ('http://www.php.net/');
 while (list ($line_num, $line) = each ($fcontents)) {
-    echo "&lt;b>Line $line_num:&lt;/b>" . htmlspecialchars($line) . "&lt;br>\n";
+    echo "<b>Line $line_num:</b>; ", htmlspecialchars ($line), "<br>\n";
 }
 
 // liefert eine Webseite in einen String
-$fcontents = join ('', file ('http://www.php.net'));
+$fcontents = implode ('', file ('http://www.php.net/'));
 ?>
+]]>
       </programlisting>
      </informalexample>
     </para>
-    <para> 
+    &note.not-bin-safe;
+    &tip.fopen-wrapper;
+    <para>
      Siehe auch <function>readfile</function>,
      <function>fopen</function>, <function>fsockopen</function>, und 
      <function>popen</function>.
@@ -706,7 +765,7 @@
    <refsect1>
     <title>Beschreibung</title>
      <methodsynopsis>
-      <type>int</type><methodname>file_exists</methodname>
+      <type>bool</type><methodname>file_exists</methodname>
       <methodparam><type>string</type><parameter>filename</parameter></methodparam>
      </methodsynopsis>
     <simpara>
@@ -739,7 +798,7 @@
       <type>int</type><methodname>fileatime</methodname>
       <methodparam><type>string</type><parameter>filename</parameter></methodparam>
      </methodsynopsis>
-    <simpara> 
+    <simpara>
      Gibt Datum und Uhrzeit des letzten Zugriffs auf eine Datei
      zur�ck, oder &false; wenn ein Fehler auftrat. Das Datum wird als
      UNIX-Timestamp zur�ckgegeben.
@@ -750,12 +809,12 @@
      Einzelheiten.
     </simpara>
     <simpara>
-     Anmerkung: Die atime einer Datei vorgesehen sich immer zu �ndern, 
+     Anmerkung: Die atime einer Datei vorgesehen sich immer zu �ndern,
      sobald Datenbl�cke einer Datei ge�ndert werden. Das kann sich 
      folgenschwer auf die Performance auswirken, wenn eine Anwendung 
      regelm��ig auf eine gro�e Anzahl Dateien oder Verzeichnisse zugreift.
      Manche Unix Dateisysteme k�nnen mit deaktivierter atime-Aktualisierung 
-     gemountet werden, um die Performance solcher Applikationen zu erh�hen; 
+     gemountet werden, um die Performance solcher Applikationen zu erh�hen;
      USENET news spools sind ein h�ufiges Beispiel. Auf solchen 
      Dateisystemen wird diese Funktion nutzlos.
     </simpara>
@@ -825,7 +884,7 @@
       <type>int</type><methodname>filegroup</methodname>
       <methodparam><type>string</type><parameter>filename</parameter></methodparam>
      </methodsynopsis>
-    <para> 
+    <para>
      Gibt die Gruppen ID des Besitzers einer Datei zur�ck, oder &false;
      wenn ein Fehler auftrat. Die Gruppen ID wird im numerischen
      Format zur�ckgegeben. Mit der Funktion
@@ -837,11 +896,9 @@
      Siehe <function>clearstatcache</function> f�r weitere
      Einzelheiten.
     </para>
+    &note.no-windows;
     <note>
      <simpara>
-      Diese Funktion hat unter Windows-Systemen keinen Effekt.
-     </simpara>
-     <simpara>
      Diese Funktion ist nicht f�r <link 
      linkend="features.remote-files">remote Dateien</link> geeignet, die zu 
      pr�fende Datei muss �ber das Dateisystem des Servers verf�gbar sein.
@@ -861,7 +918,7 @@
       <type>int</type><methodname>fileinode</methodname>
       <methodparam><type>string</type><parameter>filename</parameter></methodparam>
      </methodsynopsis>
-    <para> 
+    <para>
      Gibt die Inode-Nummer einer Datei zur�ck, oder &false; wenn ein
      Fehler auftrat.
     </para>
@@ -870,11 +927,12 @@
      Siehe <function>clearstatcache</function> f�r weitere
      Einzelheiten.
     </para>
-     <note>
-     <simpara>
-      Diese Funktion hat unter Windows-Systemen keinen Effekt.
-     </simpara>
-    </note>
+    <simpara>
+     Diese Funktion ist nicht f�r <link 
+     linkend="features.remote-files">remote Dateien</link> geeignet, die zu 
+     pr�fende Datei muss �ber das Dateisystem des Servers verf�gbar sein.
+    </simpara>
+    &note.no-windows;
    </refsect1>
   </refentry>
 
@@ -908,7 +966,7 @@
     </simpara>
     <para>Anmerkung: Diese Funktion gibt den Zeitpunkt zur�ck, an dem in 
      die Datenbl�cke einer Datei geschrieben wurde; d.h. den Zeitpunkt der 
-     �nderung des Inhalts der Datei. Verwenden Sie <function>date</function>, 
+     �nderung des Inhalts der Datei. Verwenden Sie <function>date</function>,
      um das Ergebnis dieser Funktion in ein ausgabef�higes �nderungsdatum 
      f�r z.B. Fu�zeilen in Webseiten zu erhalten.
     </para>
@@ -943,11 +1001,7 @@
      linkend="features.remote-files">remote Dateien</link> geeignet, die zu 
      pr�fende Datei muss �ber das Dateisystem des Servers verf�gbar sein.
     </simpara>
-    <note>
-     <simpara>
-      Diese Funktion hat unter Windows keinen Effekt.
-     </simpara>
-    </note>
+    &note.no-windows;
    </refsect1>
   </refentry>
 
@@ -990,8 +1044,8 @@
       <type>int</type><methodname>filesize</methodname>
       <methodparam><type>string</type><parameter>filename</parameter></methodparam>
      </methodsynopsis>
-    <para> 
-     Gibt die Gr��e einer Datei zur�ck, oder &false; wenn ein Fehler
+    <para>
+     Gibt die Gr��e einer Datei in Bytes zur�ck, oder &false; wenn ein Fehler
      auftrat.
     </para>
     <para>
@@ -1070,21 +1124,21 @@
       <listitem>
        <simpara>
         Um eine verteilte, nur lesende Verriegelung zu erhalten,
-        setzten Sie <parameter>operation</parameter> auf LOCK_SH (bzw. 
+        setzten Sie <parameter>operation</parameter> auf LOCK_SH (bzw.
         1 vor PHP 4.0.1).
        </simpara>
       </listitem>
       <listitem>
        <simpara>
         Um eine exklusive, nur schreibende Verriegelung zu erhalten,
-        setzen Sie <parameter>operation</parameter> auf LOCK_EX (bzw. 
+        setzen Sie <parameter>operation</parameter> auf LOCK_EX (bzw.
         2 vor PHP 4.0.1).
        </simpara>
       </listitem>
       <listitem>
        <simpara>
         Um eine Verriegelung freizugeben (lesend oder schreibend),
-        setzten Sie <parameter>operation</parameter> auf LOCK_UN (bzw. 
+        setzten Sie <parameter>operation</parameter> auf LOCK_UN (bzw.
         3 vor PHP 4.0.1).
        </simpara>
       </listitem>
@@ -1100,7 +1154,7 @@
     <simpara>
      <function>flock</function> erlaubt es Ihnen ein einfaches
      Leser/Schreiber Modell zu erstellen, welches auf fast jeder Plattform
-     benutzt werden kann (inkl. den meisten UNICES- und Windows-Systemen). 
+     benutzt werden kann (inkl. den meisten UNIX-Derivaten und auch Windows).
      Das optionale dritte Argument ist auf &true; gesetzt, wenn die 
      Verriegelung sperren sollte (EWOULDBLOCK errno Bedingung).
     </simpara>
@@ -1109,13 +1163,26 @@
      Fehler auftrat (z.B. wenn eine Verriegelung nicht erstellt werden
      konnte) zur�ck.
     </simpara>
+    <note>
+     <para>
+      Da <function>flock</function> einen Dateizeiger ben�tigt, k�nnten Sie
+      eine spezielle Sperrdatei benutzen, um den Zugriff auf eine Datei zu
+      sch�tzen, welche Sie mittels �ffnen im Schreibmodus (mit dem Argument
+      "w" or "w+" von <function>fopen</function>) k�rzen wollen.
+     </para>
+    </note>
     <warning>
      <para>
-      Bei den meisten Betriebssystemen ist <function>flock</function> 
-      auf dem Prozesslevel implementiert. Wenn Sie ein multithreaded 
-      Server API wie ISAPI benutzen k�nnen Sie sich nicht auf 
-      <function>flock</function> verlassen, um Dateien vor anderen PHP-Scripten
-      zu sch�tzen, welche in parallelen Threads der gleichen Server-Instanz laufen!
+      <function>flock</function> funktioniert nicht auf NFS und verschiedenen
+      anderen vernetzten Dateisystemen. F�r weitere Detail konsultieren Sie
+      bitte Ihre Betriebssystemdokumentation.
+     </para>
+     <para>
+      Bei einigen Betriebssystemen ist <function>flock</function> auf dem
+      Prozesslevel implementiert. Wenn Sie ein multithreaded Server API wie
+      ISAPI benutzen k�nnen Sie sich nicht auf <function>flock</function>
+      verlassen, um Dateien vor anderen PHP-Skripten zu sch�tzen, welche in
+      parallelen Threads der gleichen Server-Instanz laufen!
      </para>
     </warning>
    </refsect1>
@@ -1148,6 +1215,7 @@
      Beachten Sie, dass Ihnen der Dateizeiger nur den Empfang des 
      <emphasis>body</emphasis> aus der Antwort erlaubt; mit dieser 
      Funktion k�nnen Sie auf den HTTP response header nicht zugreifen.
+     Weiters sind HTTP Verbindungen nur zum Lesen.
     </simpara>
     <simpara>
      In �lteren Versionen als PHP 4.0.5 werden Weiterleitungen (HTTP 
@@ -1229,7 +1297,7 @@
      Zus�tzlich kann <parameter>mode</parameter> der Buchstabe 'b'
      hinzugef�gt werden, der die Behandlung von Bin�r-Dateien
      erlaubt. Dies ist nur auf Systemen sinnvoll, welche zwischen Bin�r-
-     und Text-Dateien unterscheiden (z.B. Windows. Ist bei Unix sinnlos). 
+     und Text-Dateien unterscheiden (z.B. Windows. Ist bei Unix sinnlos).
      Wenn das Feature nicht gebraucht wird, wird es einfach ignoriert.
     </para>
     <para>
@@ -1242,10 +1310,12 @@
      <example>
       <title>fopen()</title>
       <programlisting role="php">
+<![CDATA[
 $fp = fopen ("/home/simi/simi.txt", "r");
 $fp = fopen ("/home/simi/simi.gif", "wb");
 $fp = fopen ("http://www.php.net/";, "r");
 $fp = fopen ("ftp://user:[EMAIL PROTECTED]/";, "w");
+]]>
       </programlisting>
      </example>
     </para>
@@ -1262,14 +1332,16 @@
      plattformunabh�ngig programmieren zu k�nnen. Sollten Sie dennoch
      Backslashes verwenden, vergessen Sie nicht diese zu escapen '\\'
      <informalexample>
-      <programlisting role="php"> 
+      <programlisting role="php">
+<![CDATA[
 $fp = fopen ("c:\\data\\info.txt", "r");
+]]>
       </programlisting>
      </informalexample>
     </para>
     <simpara>
      Siehe auch <function>fclose</function>,
-     <function>fsockopen</function>, 
+     <function>fsockopen</function>,
      <function>socket_set_timeout</function>, und 
      <function>popen</function>.
     </simpara>
@@ -1278,7 +1350,7 @@
 
   <refentry id="function.fpassthru">
    <refnamediv>
-    <refname>fpassthru</refname> 
+    <refname>fpassthru</refname>
     <refpurpose>
      Gibt alle verbleibenden Daten eines Dateizeigers direkt aus.
     </refpurpose>
@@ -1290,8 +1362,8 @@
       <methodparam><type>int</type><parameter>fp</parameter></methodparam>
      </methodsynopsis>
     <simpara>
-     Die Funktion liest alle Daten vom Dateizeiger bis EOF aus und
-     gibt die Daten auf der Standartausgabe (Browser) aus.
+     Die Funktion liest alle Daten von der aktuellen Position des Dateizeigers
+     bis EOF aus und gibt die Daten auf der Standartausgabe (Browser) aus.
     </simpara>
     <simpara>
      Wenn ein Fehler auftritt, gibt <function>fpassthru</function>
@@ -1300,10 +1372,12 @@
     <simpara>
      Der Dateizeiger muss g�ltig sein und auf eine erfolgreich durch
      <function>fopen</function>, <function>popen</function> oder
-     <function>fsockopen</function> ge�ffnete Datei zeigen. Die Datei
-     wird geschlossen, wenn <function>fpassthru</function> die Datei
-     komplett gelesen hat (hinterl�sst nutzlosen
-     <parameter>fp</parameter>-Dateizeiger).
+     <function>fsockopen</function> ge�ffnete Datei zeigen. Vielleicht
+     m�ssen Sie <function>rewind</function> aufrufen um den Dateizeiger
+     auf den Beginn der Datei zur�ckzusetzen, wenn Sie bereits Daten in
+     die Datei geschrieben haben. Die Datei wird geschlossen, wenn 
+     <function>fpassthru</function> die Datei komplett gelesen hat
+     (hinterl�sst nutzlosen <parameter>fp</parameter>-Dateizeiger).
     </simpara>
     <simpara>
      Wenn Sie den Inhalt einer Datei nur auf der Standartausgabe
@@ -1312,6 +1386,14 @@
      die Datei mittels <function>fopen</function> ge�ffnet haben
      m�ssen.
     </simpara>
+    <note>
+     <para>
+      Wenn Sie <function>fpassthru</function> an einer Bin�rdatei unter
+      Windows benutzen sollten Sie sich vergewissern, dass Sie die Datei
+      im Bin�rmodus �ffnen, indem Sie ein <literal>b</literal> an den
+      Mode-Parameter von <function>fopen</function> anh�ngen.
+     </para>
+    </note>
     <simpara>
      Siehe auch <function>readfile</function>,
      <function>fopen</function>, <function>popen</function> und
@@ -1366,33 +1448,37 @@
     <para>
      <informalexample>
       <programlisting role="php">
+<![CDATA[
 // liest den Inhalt einer Datei in einen String
 $filename = "/usr/local/simi.txt";
 $fd = fopen ($filename, "r");
 $contents = fread ($fd, filesize ($filename));
 fclose ($fd);
+]]>
       </programlisting>
      </informalexample>
     </para>
     <note>
      <para>
       Auf Systemen, welche zwischen Bin�r- und Textdateien (z.B. Windows)
-      unterscheiden, muss die Datei mit 'b' im <function>fopen</function> 
+      unterscheiden, muss die Datei mit 'b' im <function>fopen</function>
       Mode-Parameter ge�ffnet werden.
      </para>
     </note>
     <para>
      <informalexample>
       <programlisting role="php">
+<![CDATA[
 $filename = "c:\\files\\somepic.gif";
 $fd = fopen ($filename, "rb");
 $contents = fread ($fd, filesize ($filename));
 fclose ($fd);
+]]>
       </programlisting>
      </informalexample>
     </para>
     <simpara>
-     Siehe auch <function>fwrite</function>, <function>fopen</function>, 
+     Siehe auch <function>fwrite</function>, <function>fopen</function>,
      <function>fsockopen</function>, <function>popen</function>,
      <function>fgets</function>, <function>fgetss</function>,
      <function>fscanf</function>, <function>file</function> und
@@ -1422,26 +1508,30 @@
      entsprechend dem angegebenen <parameter>format</parameter>
      interpretiert. Sind nur 2 Parameter angegeben, werden die analysierten 
      Werte als Array zur�ckgegeben. Werden auch optionale Parameter 
-     �bergeben, gibt die Funktion die Anzahl der ermittelten Werte zur�ck. 
-     Die optionalen Parameter m�ssen referenziert �bergeben werden. 
+     �bergeben, gibt die Funktion die Anzahl der ermittelten Werte zur�ck.
+     Die optionalen Parameter m�ssen referenziert �bergeben werden.
      <example>
       <title><function>fscanf</function></title>
       <programlisting role="php">
+<![CDATA[
 $fp = fopen ("users.txt","r");
 while ($userinfo = fscanf ($fp, "%s\t%s\t%s\n")) {
     list ($name, $profession, $countrycode) = $userinfo;
     //... Tue etwas mit den Werten
 }
 fclose($fp);
+]]>
       </programlisting>
      </example>
      <example>
       <title>users.txt</title>
       <programlisting>
+<![CDATA[
 javier  argonaut        pe
 hiroshi sculptor        jp
 robert  slacker us
 luigi   florist it
+]]>
       </programlisting>
      </example>
     </para>
@@ -1480,7 +1570,9 @@
          <member>SEEK_CUR - Setzt Position auf die aktuelle Stelle plus
       <parameter>offset</parameter>.</member>
          <member>SEEK_END - Setzt die Position ans Ende der Datei plus
-      <parameter>offset</parameter>.</member>
+      <parameter>offset</parameter>. (Um zu einer Position vor EOF zu
+      gelangen, �bergeben Sie in <parameter>offset</parameter> einen
+      negativen Wert.)</member>
      </simplelist>
     </para>
        <para>Wenn <parameter>whence</parameter> nicht angegeben wurde, wird
@@ -1498,7 +1590,7 @@
     </para>
     <note>
      <para>
-      Das <parameter>whence</parameter>-Argument wurde nach PHP 4.0 RC1 
+      Das <parameter>whence</parameter>-Argument wurde nach PHP 4.0.0 
       eingef�hrt.
      </para>
     </note>
@@ -1580,7 +1672,7 @@
      <function>fopen</function> oder <function>popen</function>
      ge�ffnete Datei zeigen.
     </para>
-    <para> 
+    <para>
      Siehe auch <function>fopen</function>,
      <function>popen</function>, <function>fseek</function> und
      <function>rewind</function>.
@@ -1635,6 +1727,10 @@
      eintritt.
     </simpara>
     <simpara>
+     <function>fwrite</function> gibt bei Erfolg die Anzahl der
+     geschriebenen Bytes zur�ck, andernfalls -1.
+    </simpara>
+    <simpara>
      Bedenken Sie, dass wenn der <parameter>length</parameter>
      Parameter gesetzt ist, die <link
      linkend="ini.magic-quotes-runtime">magic_quotes_runtime</link>
@@ -1645,7 +1741,7 @@
     <note>
      <para>
       Auf Systemen, welche zwischen Bin�r- und Textdateien (z.B. Windows)
-      unterscheiden, muss die Datei mit 'b' im <function>fopen</function> 
+      unterscheiden, muss die Datei mit 'b' im <function>fopen</function>
       Mode-Parameter ge�ffnet werden.
      </para>
     </note>
@@ -1675,7 +1771,7 @@
      Eine Ausgabe mittels <function>fwrite</function> wird normalerweise 
      mit 8k gepuffert. Das hei�t, dass wenn zwei Prozesse in den gleichen
      Output Stream (eine Datei) schreiben wollen, jeder nach 8k Daten
-     unterbrochen wird, um den anderen schreiben zu lassen. 
+     unterbrochen wird, um den anderen schreiben zu lassen.
      <function>set_file_buffer</function> setzt die Pufferung f�r
      Schreiboperationen des gegebenen Dateizeigers
      <parameter>fp</parameter> auf <parameter>buffer</parameter>
@@ -1695,12 +1791,14 @@
      <example>
       <title><function>set_file_buffer</function></title>
       <programlisting role="php">
+<![CDATA[
 $fp=fopen($file, "w");
 if($fp){
   set_file_buffer($fp, 0);
   fputs($fp, $output);
   fclose($fp);
 }
+]]>
       </programlisting>
      </example>
     </para>
@@ -1738,7 +1836,7 @@
     </para>
    </refsect1>
   </refentry>
- 
+
   <refentry id="function.is-executable">
    <refnamediv>
     <refname>is_executable</refname>
@@ -1824,19 +1922,15 @@
      Einzelheiten.
     </para>
     <para>
-     Siehe auch <function>is_dir</function> und
-     <function>is_file</function>.
+     Siehe auch <function>is_dir</function>,
+     <function>is_file</function> und <function>readlink</function>.
     </para>
     <simpara>
      Diese Funktion ist nicht f�r <link 
      linkend="features.remote-files">remote Dateien</link> geeignet, die zu 
      pr�fende Datei muss �ber das Dateisystem des Servers verf�gbar sein.
     </simpara>
-    <note>
-     <simpara>
-      Diese Funktion hat auf Windows-Systemen keinen Effekt. 
-     </simpara>
-    </note>
+    &note.no-windows;
    </refsect1>
   </refentry>
 
@@ -1950,15 +2044,10 @@
       <methodparam><type>string</type><parameter>filename</parameter></methodparam>
      </methodsynopsis>
     <para>
-     Diese Funktion ist nur in PHP 3 Versionen nach PHP 3.0.16, und
-     PHP 4 Versionen nach PHP 4.0.2 verf�gbar.
-    </para>
-
-    <para>
      Gibt &true; zur�ck, wenn die Datei <varname>filename</varname> mittels
      HTTP POST upgeloaded wurde. Das ist hilfreich sicherzustellen, dass 
      kein b�swilliger User versucht hat das Script zu �berlisten, indem 
-     er es Dateien bearbeiten l�sst, die es gar nicht bearbeiten sollte. 
+     er es Dateien bearbeiten l�sst, die es gar nicht bearbeiten sollte.
      Zum Beispiel <filename>/etc/passwd</filename>.
     </para>
     <para>
@@ -1967,6 +2056,42 @@
      (oder auch anderen Usern auf dem selben System).
     </para>
     <para>
+     <function>is_uploaded_file</function> ist in PHP 3 nur nach Version
+     3.0.16, und in PHP 4 nur nach Version 4.0.2 verf�gbar. Sollten Sie
+     eine fr�here Version benutzen, k�nnen Sie sich mit der folgenden
+     Funktion weiterhelfen:
+     <note>
+      <para>
+       Dies funktioniert <emphasis>nicht</emphasis> in Versionen nach
+       PHP 4.0.2. Das liegt an der internen Funktionalit�t von PHP,
+       welche sich nach dieser Version ge�ndert hat.
+      </para>
+     </note>
+     <programlisting role="php">
+<![CDATA[
+<?php
+/* Userland Test f�r hochgeladene Datei. */
+function is_uploaded_file($filename) {
+    if (!$tmp_file = get_cfg_var('upload_tmp_dir')) {
+        $tmp_file = dirname(tempnam('', ''));
+    }
+    $tmp_file .= '/' . basename($filename);
+    /* Der Benutzer k�nnte einen f�hrenden Slash in php.ini haben... */
+    return (ereg_replace('/+', '/', $tmp_file) == $filename);
+}
+
+/* So verwenden Sie sie, nachdem Sie in diesen �lteren
+ * Versionen auch keine move_uploaded_file() haben: */
+if (is_uploaded_file($HTTP_POST_FILES['userfile'])) {
+    copy($HTTP_POST_FILES['userfile'], "/place/to/put/uploaded/file");
+} else {
+    echo "M�gliche Dateiupload-Attacke: Dateiname '$HTTP_POST_FILES[userfile]'.";
+}
+?>
+]]>
+     </programlisting>
+    </para>
+    <para>
      Siehe auch <function>move_uploaded_file</function>, und das Kapitel
      <link linkend="features.file-upload">Steuerung von Dateiuploads</link>
      f�r ein einfaches Anwendungsbeispiel.
@@ -1995,11 +2120,7 @@
      erstellen und <function>readlink</function> zusammen mit
      <function>linkinfo</function>.
     </para>
-    <note>
-     <simpara>
-      Diese Funktion hat unter Windows-Systemen keinen Effekt.
-     </simpara>
-    </note>
+    &note.no-windows;
    </refsect1>
   </refentry>
 
@@ -2027,11 +2148,7 @@
      Siehe auch <function>symlink</function>,
      <function>link</function>, und <function>readlink</function>.
     </para>
-    <note>
-     <simpara>
-      Diese Funktion hat unter Windows keinen Effekt.
-     </simpara>
-    </note>
+    &note.no-windows;
    </refsect1>
   </refentry>
 
@@ -2059,7 +2176,9 @@
      <function>umask</function> �ndern k�nnen.
      <informalexample>
       <programlisting role="php">
+<![CDATA[
 mkdir ("/path/to/my/dir", 0700);
+]]>
       </programlisting>
      </informalexample>
     </para>
@@ -2086,29 +2205,25 @@
       <methodparam><type>string</type><parameter>destination</parameter></methodparam>
      </methodsynopsis>
     <para>
-     Diese Funktion ist nur in PHP 3 Versionen nach PHP 3.0.16, und
-     PHP 4 Versionen nach PHP 4.0.2 verf�gbar.
-    </para>
-    <para>
      Diese Funktion pr�ft, ob die mit <parameter>filename</parameter>
      bezeichnete Datei eine g�ltige Upload-Datei ist (d.h., dass sie
      mittels PHP's HTTP POST Upload-Mechanismus upgeloaded wurde).
      Ist die Datei g�ltig, wird sie zum in 
      <parameter>destination</parameter> bezeichneten Dateinamen 
-     verschoben. 
+     verschoben.
     </para>
 
     <para>
      Wenn <parameter>filename</parameter> keine g�ltige Datei ist, wird
      keine Aktion ausgef�hrt, und 
      <function>move_uploaded_file</function> gibt
-     &false; zur�ck. 
+     &false; zur�ck.
     </para>
 
     <para>
      Wenn <parameter>filename</parameter> eine g�ltige Datei ist, jedoch
      aus irgendeinem Grund nicht verschoben werden kann, wird keine 
-     Aktion ausgef�hrt, und <function>move_uploaded_file</function> 
+     Aktion ausgef�hrt, und <function>move_uploaded_file</function>
      gibt &false; zur�ck. Zus�tzlich wird eine Warnung 
      ausgegeben.
     </para>
@@ -2119,7 +2234,20 @@
      (oder auch anderen Usern auf dem selben System).
     </para>
 
-    &note.sm.uidcheck;
+    <note>
+     <para>
+      <function>move_uploaded_file</function> ist von den normalen safe-mode 
+      UID-Einschr�nkungen nicht betroffen. Dies ist nicht unsicher, da
+      <function>move_uploaded_file</function> nur mit via PHP hochgeladenen
+      Dateien arbeitet.
+     </para>
+    </note>
+
+    <warning>
+     <para>
+      Sollte die Zieldatei bereits existieren, wird sie �berschrieben.
+     </para>
+    </warning>
 
     <para>
      Siehe auch <function>is_uploaded_file</function>, und das Kapitel
@@ -2130,6 +2258,112 @@
   </refentry>
 
 
+  <refentry id="function.parse-ini-file">
+   <refnamediv>
+    <refname>parse_ini_file</refname>
+    <refpurpose>Analysiert eine Konfiguratiionsdatei</refpurpose>
+   </refnamediv>
+   <refsect1>
+    <title>Beschreibung</title>
+     <methodsynopsis>
+      <type>array</type><methodname>parse_ini_file</methodname>
+      <methodparam><type>string</type><parameter>filename</parameter></methodparam>
+      <methodparam choice="opt"><type>bool</type><parameter>
+        process_sections
+       </parameter></methodparam>
+     </methodsynopsis>
+    <para>
+     <function>parse_ini_file</function> l�dt die in
+     <parameter>filename</parameter> angegebene Datei, und gibt
+     die darin enthaltenen Einstellungen in einem assoziativen
+     Array zur�ck. Setzen Sie den letzten Parameter
+     <parameter>process_sections</parameter> auf &true;, erhalten
+     Sie ein mehrdimensionales Array mit den Gruppennamen und
+     Einstellungen. Ist <parameter>process_sections</parameter>
+     nicht angegeben, wird &false; angenommen.
+    </para>
+    <note>
+     <para>
+      Diese Funktion hat nichts mit der <filename>php.ini</filename>
+      zu tun, denn diese ist bereits abgearbeitet, wenn Sie Ihr Skript
+      ausf�hren. Diese Funktion ist vorgesehen, um Konfigurationsdateien
+      f�r Ihre eigenen Applikationen einzulesen.
+     </para>
+    </note>
+    <para>
+     Die Struktur der ini Datei ist der von
+     <filename>php.ini</filename> �hnlich.
+    </para>
+    <para>
+     <example>
+      <title>Inhalt der sample.ini</title>
+      <programlisting>
+<![CDATA[
+; Dies ist ein Beispiel f�r eine Konfigurationsdatei
+; Kommentare beginnen wie in der php.ini mit ';'
+
+[erste_gruppe]
+eins = 1
+f�nf = 5
+
+[zweite_gruppe]
+pfad = /usr/local/bin
+]]>
+      </programlisting>
+     </example>
+    </para>
+    <para>
+     <example>
+      <title><function>parse_ini_file</function></title>
+      <programlisting>
+<![CDATA[
+<?php
+
+// Ohne Gruppen analysieren
+$ini_array = parse_ini_file("sample.ini");
+print_r($ini_array);
+
+// Mit Gruppen analysieren
+$ini_array = parse_ini_file("sample.ini", TRUE);
+print_r($ini_array);
+
+?>
+]]>
+      </programlisting>
+     </example>
+    </para>
+    <para>
+     W�rde wie folgt ausgeben:
+     <informalexample>
+      <programlisting>
+<![CDATA[
+Array
+(
+    [eins] => 1
+    [f�nf] => 5
+    [pfad] => /usr/local/bin
+)
+Array
+(
+    [erste_gruppe] => Array
+        (
+            [eins] => 1
+            [f�nf] => 5
+        )
+
+    [zweite_gruppe] => Array
+        (
+            [pfad] => /usr/local/bin
+        )
+
+)
+]]>
+      </programlisting>
+     </informalexample>
+    </para>
+   </refsect1>
+  </refentry>
+
   <refentry id="function.pathinfo">
    <refnamediv>
     <refname>pathinfo</refname>
@@ -2153,7 +2387,8 @@
      <example>
       <title><function>pathinfo</function></title>
       <programlisting role="php">
-&lt;?php
+<![CDATA[
+<?php
 
 $path_parts = pathinfo("/www/htdocs/index.html");
 
@@ -2161,7 +2396,8 @@
 echo $path_parts["basename"] . "\n";
 echo $path_parts["extension"] . "\n";
 
-?&gt;
+?>
+]]>
       </programlisting>
      </example>
     </para>
@@ -2169,9 +2405,11 @@
      W�rde ausgeben:
      <informalexample>
       <programlisting>
+<![CDATA[
 /www/htdocs
 index.html
 html
+]]>
       </programlisting>
      </informalexample>
     </para>
@@ -2194,14 +2432,14 @@
       <type>int</type><methodname>pclose</methodname>
       <methodparam><type>int</type><parameter>fp</parameter></methodparam>
      </methodsynopsis>
-    <para> 
+    <para>
      Schlie�t einen Prozess-Dateizeiger, der durch einen Aufruf von
-     <function>popen</function> ge�ffnet wurde.  
-    </para> 
-    <para> 
+     <function>popen</function> ge�ffnet wurde.
+    </para>
+    <para>
      Der Dateizeiger muss g�ltig sein und durch einen erfolgreichen
      Funktionsaufruf von <function>popen</function> zur�ckgegeben
-     worden sein.  
+     worden sein.
     </para>
     <para>
      Gibt den End-Status eines laufenden Prozesses zur�ck.
@@ -2224,7 +2462,7 @@
       <methodparam><type>string</type><parameter>command</parameter></methodparam>
       <methodparam><type>string</type><parameter>mode</parameter></methodparam>
      </methodsynopsis>
-    <para> 
+    <para>
      �ffnet eine Verbindung zu einem Prozess, der durch die Anweisung
      <parameter>command</parameter> ausgef�hrt wurde.
     </para>
@@ -2244,10 +2482,36 @@
     <para>
      <informalexample>
       <programlisting role="php">
+<![CDATA[
 $fp = popen ("/bin/ls", "r");
+]]>
       </programlisting>
      </informalexample>
     </para>
+    <note>
+     <para>
+      Wenn das auszuf�hrende Kommando nicht gefunden werden konnte,
+      wird eine g�ltige Ressource zur�ckgegeben. Das mag seltsam
+      erscheinen, macht aber Sinn. Es erm�glicht Ihnen, auf von der
+      Shell zur�ckgegebene Fehlermeldungen zuzugreifen:
+      <informalexample>
+       <programlisting role="php">
+<![CDATA[
+<?php
+error_reporting(E_ALL);
+
+/* Umleitung hinzuf�gen, dass wir stderr erhalten k�nnen */
+$fp = popen('/path/to/spooge 2>&1', 'r');
+echo "'$fp'; " . gettype($fp) . "\n";
+$read = fread($fp, 2096);
+echo $read;
+pclose($fp);
+?>
+]]>
+       </programlisting>
+      </informalexample>
+     </para>
+    </note>
     <para>
      Siehe auch <function>pclose</function>.
     </para>
@@ -2280,8 +2544,8 @@
     </para>
     <para>
      Wenn <parameter>filename</parameter> mit "http://"; (nicht case
-     sensitive) beginnt, wird eine HTTP 1.0 Connection zu dem
-     spezifiziertem Server ge�ffnet und der Text der Antwort wird auf
+     sensitive) beginnt, wird eine HTTP 1.0 Verbindung zu dem
+     spezifiziertem Server hergestellt und der Text der Antwort wird auf
      die Standartausgabe geschrieben.
     </para>
     <para>
@@ -2291,8 +2555,8 @@
     </para>
     <para>
      Wenn <parameter>filename</parameter> mit "ftp://"; (nicht case
-     sensitive) beginnt, wird eine FTP-Connection zu dem
-     spezifiziertem Server ge�ffnet und die angeforderte Datei wird
+     sensitive) beginnt, wird eine FTP Verindung zu dem
+     spezifiziertem Server hergestellt und die angeforderte Datei wird
      auf der Standartausgabe ausgegeben. Wenn der Server keinen
      passiven Mode unterst�tzt, wird diese Funktion fehlschlagen.
     </para>
@@ -2336,14 +2600,10 @@
      fehlschlug.
     </para>
     <para>
-     Siehe auch <function>symlink</function>,
-     <function>readlink</function> und <function>linkinfo</function>.
+     Siehe auch <function>is_link</function>,
+     <function>symlink</function> und <function>linkinfo</function>.
     </para>
-    <note>
-     <simpara>
-      Diese Funktion hat unter Windows keinen Effekt.
-     </simpara>
-    </note>
+    &note.no-windows;
    </refsect1>
   </refentry>
 
@@ -2359,11 +2619,11 @@
       <methodparam><type>string</type><parameter>oldname</parameter></methodparam>
       <methodparam><type>string</type><parameter>newname</parameter></methodparam>
      </methodsynopsis>
-    <para> 
+    <para>
      Versucht eine Datei <parameter>oldname</parameter> in
      <parameter>newname</parameter> umzubenennen.
-    </para> 
-    <para> 
+    </para>
+    <para>
      Gibt &true; bei Erfolg, andernfalls &false; zur�ck.
     </para>
    </refsect1>
@@ -2382,7 +2642,7 @@
       <type>int</type><methodname>rewind</methodname>
       <methodparam><type>int</type><parameter>fp</parameter></methodparam>
      </methodsynopsis>
-    <para> 
+    <para>
      Setzt den Dateizeiger (Datei-Positions-Indikator) f�r
      <parameter>fp</parameter> an den Anfang des Dateistreams.
     </para>
@@ -2394,6 +2654,13 @@
      zuvor erfolgreich durch <function>fopen</function> ge�ffnet
      wurde.
     </para>
+    <note>
+     <para>
+      Haben Sie eine Datei im Append-Modus ("a") ge�ffnet, werden
+      unabh�ngig von der Dateiposition alle zu schreibenden Daten
+      angeh�ngt.
+     </para>
+    </note>
     <para>
      Siehe auch <function>fseek</function> und
      <function>ftell</function>.
@@ -2412,12 +2679,12 @@
       <type>int</type><methodname>rmdir</methodname>
       <methodparam><type>string</type><parameter>dirname</parameter></methodparam>
      </methodsynopsis>
-    <para> 
+    <para>
      Versucht ein Verzeichnis spezifiziert durch die Pfadangabe zu
      l�schen. Das Verzeichnis muss leer sein und die relevanten Rechte
-     m�ssen erteilt sein.  
-    </para> 
-    <para> 
+     m�ssen erteilt sein.
+    </para>
+    <para>
      Wenn ein Fehler auftritt wird 0 zur�ckgegeben.
     </para>
     <para>
@@ -2494,8 +2761,8 @@
      Gibt &false; zur�ck, wenn ein Fehler auftrat.
     </para>
     <para>
-     <function>stat</function> handhabt keine URL, wie 
-     <function>fopen</function>.
+     <function>stat</function> ist nicht f�r <link
+     linkend="features.remote-files">remote Dateien</link> geeignet.
     </para>
     <para>
      Das Ergebnis dieses Funktionsaufrufes wird zwischengespeichert.
@@ -2519,8 +2786,8 @@
       <methodparam><type>string</type><parameter>filename</parameter></methodparam>
      </methodsynopsis>
     <para>
-     Ermittelt statistische Informationen �ber eine Datei oder  
-     symbolischen Link, spezifiziert in <parameter>filename</parameter>. 
+     Ermittelt statistische Informationen �ber eine Datei oder
+     symbolischen Link, spezifiziert in <parameter>filename</parameter>.
      Diese Funktion ist identisch mit der Funktion 
      <function>stat</function>, au�er dass wenn der Parameter 
      <parameter>filename</parameter> ein symbolischer Link ist, dessen 
@@ -2572,13 +2839,17 @@
      Systeme (z.B. Windows) geben '-1' zur�ck.
     </para>
     <para>
+     <function>lstat</function> ist nicht f�r <link
+     linkend="features.remote-files">remote Dateien</link> geeignet.
+    </para>
+    <para>
      Das Ergebnis dieses Funktionsaufrufes wird zwischengespeichert.
      Siehe auch <function>clearstatcache</function> f�r weitere
      Einzelheiten.
     </para>
    </refsect1>
   </refentry>
-  
+
   <refentry id="function.realpath">
    <refnamediv>
     <refname>realpath</refname>
@@ -2595,20 +2866,21 @@
      beseitigt Verweise zu '/./', '/../' und extra '/' Zeichen im Input 
      <parameter>path</parameter>, und gibt den absoluten Pfadnamen 
      kanonisch zur�ck. Der Pfad im Ergebnis enth�lt keine Komponenten 
-     eines symbolischen Links mehr, wie '/./' or '/../'. 
+     eines symbolischen Links mehr, wie '/./' or '/../'.
     </para>
-
     <para>
      <example>
       <title><function>realpath</function></title>
       <programlisting role="php">
+<![CDATA[
 $real_path = realpath("../../index.php");
+]]>
       </programlisting>
      </example>
     </para>
    </refsect1>
   </refentry>
-  
+
   <refentry id="function.symlink">
    <refnamediv>
     <refname>symlink</refname>
@@ -2631,18 +2903,14 @@
      erstellen, und <function>readlink</function> zusammen mit
      <function>linkinfo</function>.
     </para>
-    <note>
-     <simpara>
-      Diese Funktion hat unter Windows-Systemen keinen Effekt.
-     </simpara>
-    </note>
+    &note.no-windows;
    </refsect1>
   </refentry>
 
   <refentry id="function.tempnam">
    <refnamediv>
     <refname>tempnam</refname>
-    <refpurpose>Erzeugt einen eindeutigen Dateinamen</refpurpose>
+    <refpurpose>Erzeugt eine Datei mit eindeutigem Dateinamen</refpurpose>
    </refnamediv>
    <refsect1>
     <title>Beschreibung</title>
@@ -2652,10 +2920,10 @@
       <methodparam><type>string</type><parameter>prefix</parameter></methodparam>
      </methodsynopsis>
     <para>
-     Erzeugt einen eindeutigen tempor�ren Dateinamen in dem
+     Erzeugt eine Datei mit einem eindeutigen Dateinamen in dem
      spezifizierten Verzeichnis. Wenn das Verzeichnis nicht existiert,
-     wird <function>tempnam</function> einen Dateinamen im tempor�ren
-     Verzeichnis des Systems erstellen.
+     erstellt <function>tempnam</function> eine Datei im tempor�ren
+     Verzeichnis des Systems, und gibt den Dateinamen zur�ck.
     </para>
     <para>
      Vor PHP 4.0.6 war das Verhalten von <function>tempnam</function>
@@ -2669,25 +2937,37 @@
     </para>
     <para>
      Gibt den neuen tempor�ren Dateinamen bei Erfolg, oder eine
-     &null; Zeichenkette wenn ein Fehler auftritt zur�ck.
+     &false; Zeichenkette wenn ein Fehler auftritt zur�ck.
      <example>
       <title><function>tempnam</function></title>
       <programlisting role="php">
+<![CDATA[
 $tmpfname = tempnam ("/tmp", "FOO");
+
+$fp = fopen($tmpfname, "w");
+fwrite($fp, "schreibe in T�mpor�rdatei");
+fclose($fp);
+
+// tue hier etwas
+
+unlink($tmpfname);
+]]>
       </programlisting>
      </example>
     </para>
     <note>
      <simpara>
-      Diese Funktion hat ihr Verhalten seit PHP 4.0.3 ge�ndert. 
+      Diese Funktion hat ihr Verhalten seit PHP 4.0.3 ge�ndert.
       Die tempor�re Datei wird ebenfalls angelegt um eine 
       "Hetzsituation" zu vermeiden, wo in der Zeit nach dem Generieren
-      des Strings, und bevor das Script dazukommt die Datei anzulegen, 
-      die Datei im Dateisystem erscheinen k�nnte.
+      des Strings, und bevor das Script dazukommt die Datei anzulegen,
+      die Datei im Dateisystem erscheinen k�nnte. Beachten Sie, dass
+      falls Sie die Datei nicht mehr ben�tigen, Sie diese wieder entfernen
+      m�ssen (dies geschieht nicht automatisch).
      </simpara>
     </note>
        <para>
-        Siehe auch <function>tmpfile</function>.
+     Siehe auch <function>tmpfile</function> und <function>unlink</function>.
        </para>
    </refsect1>
   </refentry>
@@ -2716,6 +2996,18 @@
         Betriebssystems bzgl. der <literal>tmpfile(3)</literal> Funktion,
         wie auch die <filename>stdio.h</filename> Header-Datei.
     </para>
+    <para>
+     <example>
+      <title><function>tmpfile</function></title>
+      <programlisting role="php">
+<![CDATA[
+$temp = tmpfile();
+fwrite($temp, "schreibt in Tempor�rdatei");
+fclose($temp); // dies entfernt die Datei
+]]>
+      </programlisting>
+     </example>
+    </para>
        <para>
         Siehe auch <function>tempnam</function>.
        </para>
@@ -2726,7 +3018,7 @@
    <refnamediv>
     <refname>touch</refname>
     <refpurpose>
-     Setzt das Datum der letzten �nderung einer Datei
+     Setzt die Zugriffs- und Modifizierungszeit einer Datei
     </refpurpose>
    </refnamediv>
    <refsect1>
@@ -2739,11 +3031,12 @@
        </parameter></methodparam>
      </methodsynopsis>
     <para>
-     Versucht das Datum der letzten Modifikation einer Datei
-     spezifiziert durch <parameter>filename</parameter> auf den Wert
-     spezifiziert durch <parameter>time</parameter> zu setzten.  Wenn
-     die Option <parameter>time</parameter> nicht angegeben wurde,
-     benutzt die Funktion die aktuelle Zeit.
+     Setzt Datum und Uhrzeit der letzten �nderung und des letzten Zugriffs
+     der durch <parameter>filename</parameter> spezifizierten Datei auf den
+     durch <parameter>time</parameter> spezifizierten Wert. Wenn die Option
+     <parameter>time</parameter> nicht angegeben wurde, wird die aktuelle
+     Zeit benutzt. Dies ist �quivalent zu dem, was utime tut (manchmal wird
+     auch als utimes davon gesprochen).
     </para>
     <para>
      Wenn die Datei nicht existiert, wird sie erzeugt.
@@ -2753,6 +3046,7 @@
      <example>
       <title><function>touch</function></title>
       <programlisting role="php">
+<![CDATA[
 if (touch ($DateiName)) {
     print "$DateiName Modifizierungs-Zeit wurde auf das aktuelle 
           Datum und die aktuelle Uhrzeit gesetzt.";
@@ -2760,6 +3054,7 @@
     print "Tut mir leid, Modifikations-Zeit von $DateiName konnte 
           nicht ge�ndert werden.";
 }
+]]>
       </programlisting>
      </example>
     </para>
@@ -2789,11 +3084,7 @@
      <function>umask</function> ohne Argumente gibt einfach die
      aktuelle umask zur�ck.
     </para>
-    <note>
-     <simpara>
-      Diese Funktion hat auf Windows-Systemen keinen Effekt.
-     </simpara>
-    </note>
+    &note.no-windows;
    </refsect1>
   </refentry>
 
@@ -2813,16 +3104,11 @@
      unlink() Funktion.
     </para>
     <para>
-     Gibt 0 oder &false; zur�ck, wenn ein Fehler auftritt.
+     &return.success;
     </para>
     <para>
      Siehe auch <function>rmdir</function> um Verzeichnisse zu l�schen.
     </para>
-    <note>
-     <simpara>
-      Diese Funktion k�nnte auf Windows-Systemen ohne Effekt bleiben.
-     </simpara>
-    </note>
    </refsect1>
   </refentry>
  </reference>


Reply via email to