eschmid Sun Apr 22 21:40:11 2001 EDT Modified files: /phpdoc/de/functions filesystem.xml Log: Some enhancements by Thomas.
Index: phpdoc/de/functions/filesystem.xml diff -u phpdoc/de/functions/filesystem.xml:1.20 phpdoc/de/functions/filesystem.xml:1.21 --- phpdoc/de/functions/filesystem.xml:1.20 Sat Apr 14 02:37:27 2001 +++ phpdoc/de/functions/filesystem.xml Sun Apr 22 21:40:11 2001 @@ -1,2754 +1,2946 @@ - <reference id="ref.filesystem"> - <title>Funktionen des Dateisystems</title> - <titleabbrev>Filesystem</titleabbrev> - - <refentry id="function.basename"> - <refnamediv> - <refname>basename</refname> - <refpurpose> - Gibt den Namen einer Datei aus einer vollständigen Pfadangabe - zurück - </refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>string <function>basename</function></funcdef> - <paramdef>string <parameter>path</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - Diese Funktion extrahiert aus einer vollständigen Pfadangabe den - Namen der Datei und gibt diesen zurück. - </para> - <para> - Unter Windows wird sowohl der Slash (<literal>/</literal>) als - auch der Backslash (<literal>\</literal>) als Trennzeichen bei - Pfadangaben benutzt. Unter anderen Betriebssystemen hingegen nur - der Slash (<literal>/</literal>). - </para> - <para> - <example> - <title><function>Basename</function> Beispiel</title> - <programlisting role="php"> -$path = "/home/httpd/html/index.php3"; -$file = basename($path); // $file enthält den Wert "index.php3" - </programlisting> - </example> - </para> - <para> - Siehe auch <function>dirname</function>. - </para> - </refsect1> - </refentry> - - <refentry id="function.chgrp"> - <refnamediv> - <refname>chgrp</refname> - <refpurpose> - Wechselt die Gruppenzugehörigkeit einer Datei - </refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>int <function>chgrp</function></funcdef> - <paramdef>string <parameter>filename</parameter></paramdef> - <paramdef>mixed <parameter>group</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - Weist einer Datei einer 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 - ä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> - </refsect1> - </refentry> - - <refentry id="function.chmod"> - <refnamediv> - <refname>chmod</refname> - <refpurpose>Ändert die Zugriffsrechte einer Datei</refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>int <function>chmod</function></funcdef> - <paramdef>string <parameter>filename</parameter></paramdef> - <paramdef>int <parameter>mode</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - Diese Funktion ändert die Zugriffsrechte der Datei spezifiziert - in <parameter>filename</parameter> in die Zugriffsrechte um, die - in <parameter>mode</parameter> spezifiziert sind. - </para> - <para> - Bedenken Sie, das <parameter>mode</parameter> nicht automatisch - für einen Oktalwert gehalten wird. Um sicher zu gehen, dass die - Operation wie erwartet verläuft sollten Sie - <parameter>mode</parameter> mit dem Prefix Null (0) versehen: - <informalexample> - <programlisting role="php"> -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. - </para> - <para> - Siehe auch <function>chown</function> und - <function>chgrp</function>. - </para> - <note> - <simpara> - Diese Funktion bleibt unter Windows-Systemen ohne Effekt. - </simpara> - </note> - </refsect1> - </refentry> - - <refentry id="function.chown"> - <refnamediv> - <refname>chown</refname> - <refpurpose>Ändert den Eigentümer einer Datei</refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>int <function>chown</function></funcdef> - <paramdef>string <parameter>filename</parameter></paramdef> - <paramdef>mixed <parameter>user</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - Ändert den Eigentümer der Datei <parameter>filename</parameter> - in Benutzer <parameter>user</parameter>. Nur der Superuser kann - den Eigentümer einer Datei ändern. - </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> - </refsect1> - </refentry> - - <refentry id="function.clearstatcache"> - <refnamediv> - <refname>clearstatcache</refname> - <refpurpose>Löscht den Status Cache</refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>void <function>clearstatcache</function></funcdef> - <void/> - </funcprototype> - </funcsynopsis> - <para> - <function>clearstatcache</function> löscht den Zwischenspeicher - mit den Dateistatuswerten. Die Systemaufrufe - <systemitem>stat</systemitem> oder <systemitem>lstat</systemitem> - sind auf den meisten Systemen sehr "teure" Aufrufe. Daher wird - das Ergebnis des letzten Aufrufs von einer der unten aufgeführten - Funktionen für die nächste Benutzung eines ähnlichen Aufrufs mit - dem gleichen Dateinamen gespeichert. Wenn Sie einen neuen - Status-Check erzwingen wollen, z.B. wenn die Datei in der - Zwischenzeit oftmals aufgerufen wurde, verändert oder - verschwunden ist, können Sie diese Funktion dazu benutzen, das - Ergebnis des letzten Aufrufes aus dem Speicher zu leeren. - </para> - <para> - Dieser Wert wird nur für die Zeit eines einzelnen Requests - zwischengespeichert. - </para> - <para> - Folgende Funktionen betreffen den Dateistatus: - <function>stat</function>, <function>lstat</function>, - <function>file_exists</function>, - <function>is_writeable</function>, - <function>is_readable</function>, - <function>is_executable</function>, <function>is_file</function>, - <function>is_dir</function>, <function>is_link</function>, - <function>filectime</function>, <function>fileatime</function>, - <function>filemtime</function>, <function>fileinode</function>, - <function>filegroup</function>, <function>fileowner</function>, - <function>filesize</function>, <function>filetype</function>, and - <function>fileperms</function>. - </para> - </refsect1> - </refentry> - - <refentry id="function.copy"> - <refnamediv> - <refname>copy</refname> - <refpurpose>Kopiert eine Datei</refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>int <function>copy</function></funcdef> - <paramdef>string <parameter>source</parameter></paramdef> - <paramdef>string <parameter>dest</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - Die Funktion <function>copy</function> kopiert eine Datei. Sie - gibt TRUE zurück, wenn der Kopiervorgang erfolgreich war, - andernfalls FALSE. - <example> - <title><function>Copy</function> Beispiel</title> - <programlisting role="php"> -if (!copy ($file, $file.'.bak')) { - print ("failed to copy $file...<br>\n"); -} - </programlisting> - </example> - </para> - <para> - Siehe auch: <function>rename</function>. - </para> - </refsect1> - </refentry> - - <refentry id="function.delete"> - <refnamediv> - <refname>delete</refname> - <refpurpose>"Dummy Handbuch Eintrag"</refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>void <function>delete</function></funcdef> - <paramdef>string <parameter>file</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - Dieses ist ein "Dummy Handbuch Eintrag" für diejenigen, die nach - einer Funktion wie <function>unlink</function> oder - <function>unset</function> an der falschen Stelle suchen. - </para> - <para> - Siehe auch <function>unlink</function> um Dateien zu löschen, - <function>unset</function> um Variablen zu löschen. - </para> - </refsect1> - </refentry> - - <refentry id="function.dirname"> - <refnamediv> - <refname>dirname</refname> - <refpurpose> - Extrahiert den Verzeichnis-Namen aus einer vollständigen - Pfadangabe - </refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>string <function>dirname</function></funcdef> - <paramdef>string <parameter>path</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - Bei einer vollständigen Pfadangabe gibt diese Funktion den - Verzeichnispfad zurück. - </para> - <para> - Unter Windows wird sowohl der Slash (<literal>/</literal>) als - auch der Backslash (<literal>\</literal>) als Trennzeichen bei - Pfadangaben benutzt. Unter anderen Betriebssystemen hingegen nur - der Slash (<literal>/</literal>) - </para> - <para> - <example> - <title><function>dirname</function> Beispiel</title> - <programlisting role="php"> -$path = "/etc/passwd"; -$file = dirname ($path); // $file enthält den Wert "/etc" - </programlisting> - </example> - </para> - <para> - Siehe auch <function>basename</function>. - </para> - </refsect1> - </refentry> - - <refentry id="function.diskfreespace"> - <refnamediv> - <refname>diskfreespace</refname> - <refpurpose> - Gibt den freien Speicherplatz in einem Verzeichnis zurück - </refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>float <function>diskfreespace</function></funcdef> - <paramdef>string <parameter>directory</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - Diese Funktion gibt den freien Speicherplatz eines Verzeichnisses - in Byte zurück. - </para> - <para> - <example> - <title><function>diskfreespace</function> Beispiel</title> - <programlisting role="php"> -$df = diskfreespace("/"); // $df hält die Anzahl an freien Bytes - // im Verzeichnis "/" - </programlisting> - </example> - </para> - </refsect1> - </refentry> - - <refentry id="function.fclose"> - <refnamediv> - <refname>fclose</refname> - <refpurpose>Schließt einen offenen Dateizeiger</refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>int <function>fclose</function></funcdef> - <paramdef>int <parameter>fp</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - Die Datei, auf die der Dateizeiger <parameter>fp</parameter> - zeigt wird geschlossen. - </para> - <para> - Gibt bei erfolgreichem Schließen der Datei TRUE, andernfalls - FALSE zurück. - </para> - <para> - Der Datei-Zeiger muss gültig sein, d.h. die Datei, auf die - gezeigt wird muss zuvor mit <function>fopen</function>, - <function>popen</function> oder <function>fsockopen</function> - geöffnet worden sein. - </para> - </refsect1> - </refentry> - - <refentry id="function.feof"> - <refnamediv> - <refname>feof</refname> - <refpurpose> - Prüft, ob der Dateizeiger am Ende der Datei steht - </refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>int <function>feof</function></funcdef> - <paramdef>int <parameter>fp</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - Gibt TRUE zurück, falls der Dateizeiger am Ende der Datei steht - oder ein Fehler aufgetreten ist, andernfalls FALSE. - </para> - <para> - Der Dateizeiger muss gültig sein, d.h. die Datei, auf die gezeigt - wird, muss zuvor mit <function>fopen</function>, - <function>popen</function> oder <function>fsockopen</function> - geöffnet worden sein. - </para> - </refsect1> - </refentry> - - <refentry id="function.fflush"> - <refnamediv> - <refname>fflush</refname> - <refpurpose>Flushes the output to a file</refpurpose> - </refnamediv> - <refsect1> - <title>Description</title> - <funcsynopsis> - <funcprototype> - <funcdef>int <function>fflush</function></funcdef> - <paramdef>int <parameter>fp</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - This function forces a write of all buffered output to the - to the resource pointed to by the file handle - <parameter>fp</parameter>. Returns true if succesful, false - otherwise. - </para> - <para> - The file pointer must be valid, and must point to a file - successfully opened by <function>fopen</function>, - <function>popen</function>, or <function>fsockopen</function>. - </para> - </refsect1> - </refentry> - - <refentry id="function.fgetc"> - <refnamediv> - <refname>fgetc</refname> - <refpurpose> - Liest das Zeichen, auf welches der Dateizeiger zeigt - </refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>string <function>fgetc</function></funcdef> - <paramdef>int <parameter>fp</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - Gibt einen String zurück, der ein einzelnes Zeichen von der - aktuellen Position des Dateizeigers <parameter>fp</parameter> - enthält. Gibt FALSE zurück, wenn der Dateizeiger am Ende der - Datei steht (wie die Funktion <function>feof</function>). - </para> - <para> - Der Dateizeiger muss gültig sein, d.h. die Datei, auf die gezeigt - wird, muss zuvor mit <function>fopen</function>, - <function>popen</function> oder <function>fsockopen</function> - geöffnet worden sein. - </para> - <para> - Siehe auch <function>fread</function>, - <function>fopen</function>, <function>popen</function>, - <function>fsockopen</function> und <function>fgets</function>. - </para> - </refsect1> - </refentry> - - <refentry id="function.fgetcsv"> - <refnamediv> - <refname>fgetcsv</refname> - <refpurpose> - Liest eine Zeile von der Position des Dateizeigers und - überprüft diese auf Komma-Separierte-Werte (CSV) - </refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>array <function>fgetcsv</function></funcdef> - <paramdef>int <parameter>fp</parameter></paramdef> - <paramdef>int <parameter>length</parameter></paramdef> - <paramdef>string - <parameter> - <optional>Trennzeichen (Delimiter)</optional> - </parameter> - </paramdef> - </funcprototype> - </funcsynopsis> - <simpara> - Die Funktion <function>fgetcsv</function> handelt ähnlich der - Funktion <function>fgets</function>, bis auf den Umstand, das - <function>fgetcsv</function> die eingelesene Zeile auf - Kommaseparierte Felder hin überprüft. Das Ergebnis wird als Array - zurückgegeben. Als Trennzeichen (Delimiter) wird - wenn kein - anderes Trennzeichen im dritten optionalen Parameter angegeben - wird - das Komma benutzt. - </simpara> - <simpara> - Der Dateizeiger <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>fsockopen</function> geöffnet worden sein. - </simpara> - <simpara> - 'length' muss größer sein als die längste in der CSV-Datei - vorhandene Zeile (um das Erkennen von EndOfLine(Ende der Zeile) - Zeichen zu ermöglichen). - </simpara> - <simpara> - <function>fgetcsv</function> gibt FALSE am Dateiende und bei - Lesefehlern zurück. - </simpara> - <simpara> - Eine leere Zeile der CSV-Datei wird als Array mit einem Feld das - den Wert NULL hält zurückgegeben. Sie wird nicht als Fehler - behandelt. - </simpara> - <example> - <title> - <function>Fgetcsv</function> Beispiel - Lesen und Ausgabe des - Inhalts einer CSV-Datei - </title> - <programlisting role="php"> -$row = 1; // Anzahl der Arrays -$fp = fopen ("test.csv","r"); // Datei wird zum Lesen - // geöffnet -while ($data = fgetcsv ($fp, 1000, ",")) { // Daten werden aus der Datei - // in einen Array $data gelesen - $num = count ($data); // Felder im Array $data - // werden gezählt - print "<p> $num fields in line $row: <br>"; - $row++; // Anzahl der Arrays wird - // inkrementiert - for ($c=0; $c<$num; $c++) { // FOR-Schleife, um Felder - print $data[$c] . "<br>"; // des Arrays auszugeben - } -} -fclose ($fp); - </programlisting> - </example> - </refsect1> - </refentry> - - <refentry id="function.fgets"> - <refnamediv> - <refname>fgets</refname> - <refpurpose> - Liest eine Zeile von der Position des Dateizeigers - </refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>string <function>fgets</function></funcdef> - <paramdef>int <parameter>fp</parameter></paramdef> - <paramdef>int <parameter>length</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - Gibt eine Zeile zurück mit einer in <parameter>length</parameter> - definierten Länge -1 Byte, welche aus der Datei von der aktuellen - Position des Dateizeigers <parameter>fp</parameter> aus - ausgelesen wird. Die Zeile endet an einem Zeilenumbruch, EOF - (Ende der Datei) oder bei <parameter>lenght</parameter> Zeichen - (Je nachdem, was eher auftritt). - </para> - <para> - Wenn ein Fehler auftritt, wird FALSE zurückgegeben. - </para> - <para> - 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. - </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>fsockopen</function> geöffnet worden sein. - </simpara> - <para> - Ein einfaches Beispiel: - <example> - <title>Eine Datei Zeile für Zeile einlesen</title> - <programlisting role="php"> -$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>, <function>popen</function>, - <function>fgetc</function> und <function>fsockopen</function>. - </para> - </refsect1> - </refentry> - - <refentry id="function.fgetss"> - <refnamediv> - <refname>fgetss</refname> - <refpurpose> - Liest eine Zeile von der aktuellen Position des Dateizeigers - und entfernt HTML und PHP-Tags. - </refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>string <function>fgetss</function></funcdef> - <paramdef>int <parameter>fp</parameter></paramdef> - <paramdef>int <parameter>length</parameter></paramdef> - <paramdef>string - <parameter> - <optional>allowable_tags</optional> - </parameter> - </paramdef> - </funcprototype> - </funcsynopsis> - <para> - Diese Funktion ist identisch mit der Funktion - <function>fgets</function>, ausser das - <function>fgetss</function> versucht, vorhandene HTML und - PHP-Tags aus dem gelesenen Text zu entfernen. - </para> - <para> - Optional können mit dem dritten Parameter - <parameter>allowable_tags</parameter> Tags spezifiziert werden, - die nicht entfernt werden sollen. - <note> - <para> - <parameter>allowable_tags</parameter> wurden in PHP 3.0.13 - hinzugefügt, PHP4B3. - </para> - </note> - </para> - <para> - Siehe auch <function>fgets</function>, - <function>fopen</function>, <function>fsockopen</function>, - <function>popen</function> und <function>strip_tags</function>. - </para> - </refsect1> - </refentry> - - <refentry id="function.file"> - <refnamediv> - <refname>file</refname> - <refpurpose> - Liest eine Datei komplett in einen Array - </refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>array <function>file</function></funcdef> - <paramdef>string <parameter>filename</parameter></paramdef> - <paramdef>int - <parameter><optional>use_include_path</optional></parameter> - </paramdef> - </funcprototype> - </funcsynopsis> - <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> - <para> - Optional kann der zweiter Parameter benutzt und auf '1' gesetzt - werden, wenn in dem <link - linkend="ini.include-path">include_path</link> ebenfalls nach der - Datei gesucht werden soll. - </para> - <para> - <informalexample> - <programlisting role="php"> -<?php -// liest eine Webseite in einen Array und gibt das Ergebnis aus -$fcontents = file ('http://www.php.net'); -while (list ($line_num, $line) = each ($fcontents)) { - echo "<b>Line $line_num:</b>" . htmlspecialchars($line) . "<br>\n"; -} - -// liefert eine Webseite in einen String -$fcontents = join ('', file ('http://www.php.net')); -?> - </programlisting> - </informalexample> - </para> - <para> - Siehe auch <function>readfile</function>, - <function>fopen</function>, and <function>popen</function>. - </para> - </refsect1> - </refentry> - - <refentry id="function.file-exists"> - <refnamediv> - <refname>file_exists</refname> - <refpurpose>Überprüft, ob eine Datei existiert</refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>int <function>file_exists</function></funcdef> - <paramdef>string <parameter>filename</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <simpara> - Gibt TRUE zurück, wenn die mit <parameter>filename</parameter> - spezifizierte Datei existiert, andernfalls FALSE. - </simpara> - <simpara> - <function>File_exists</function> funktioniert nur mit lokalen - Dateien. Die Datei, deren Existenz überprüft werden soll muss - über das Dateisystem des Servers erreichbar sein. - </simpara> - <simpara> - Das Ergebnis dieses Funktionsaufrufes wird zwischengespeichert. - Siehe <function>clearstatcache</function> für weitere - Einzelheiten. - </simpara> - </refsect1> - </refentry> - - <refentry id="function.fileatime"> - <refnamediv> - <refname>fileatime</refname> - <refpurpose> - Gibt Datum und Uhrzeit des letzten Zugriffs auf eine Datei zurück - </refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>int <function>fileatime</function></funcdef> - <paramdef>string <parameter>filename</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <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. - </simpara> - <simpara> - Das Ergebnis dieses Funktionsaufrufes wird zwischengespeichert. - Siehe <function>clearstatcache</function> für weitere - Einzelheiten. - </simpara> - </refsect1> - </refentry> - - <refentry id="function.filectime"> - <refnamediv> - <refname>filectime</refname> - <refpurpose> - Gibt Datum und Uhrzeit der letzten Änderung des Dateizeigers - Inode zurück - </refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>int <function>filectime</function></funcdef> - <paramdef>string <parameter>filename</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - Gibt Zeit der letzten Änderung des Dateizeigers Inode zurück, - oder FALSE wenn ein Fehler auftrat. Die Zeit wird als - UNIX-Timestamp zurückgegeben. - </para> - <para> - Das Ergebnis dieses Funktionsaufrufes wird zwischengespeichert. - Siehe <function>clearstatcache</function> für weitere - Einzelheiten. - </para> - </refsect1> - </refentry> - - <refentry id="function.filegroup"> - <refnamediv> - <refname>filegroup</refname> - <refpurpose> - Gibt die Gruppenzugehörigkeit einer Datei zurück - </refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>int <function>filegroup</function></funcdef> - <paramdef>string <parameter>filename</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <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 - <function>posix_getgrgid</function> können Sie diese zu ihrem - Gruppennamen auflösen. - </para> - <para> - Das Ergebnis dieses Funktionsaufrufes wird zwischengespeichert. - Siehe <function>clearstatcache</function> für weitere - Einzelheiten. - </para> - <note> - <simpara> - Diese Funktion hat unter Windows-Systemen keinen Effekt. - </simpara> - </note> - </refsect1> - </refentry> - - <refentry id="function.fileinode"> - <refnamediv> - <refname>fileinode</refname> - <refpurpose>Gibt Inode-Nummer einer Datei aus</refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>int <function>fileinode</function></funcdef> - <paramdef>string <parameter>filename</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - Gibt die Inode-Nummer einer Datei zurück, oder FALSE wenn ein - Fehler auftrat. - </para> - <para> - Das Ergebnis dieses Funktionsaufrufes wird zwischengespeichert. - Siehe <function>clearstatcache</function> für weitere - Einzelheiten. - </para> - <note> - <simpara> - Diese Funktion hat unter Windows-Systemen keinen Effekt. - </simpara> - </note> - </refsect1> - </refentry> - - <refentry id="function.filemtime"> - <refnamediv> - <refname>filemtime</refname> - <refpurpose> - Gibt Datum und Uhrzeit der letzten Dateiänderung aus - </refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>int <function>filemtime</function></funcdef> - <paramdef>string <parameter>filename</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - Gibt Datum und Uhrzeit zurück, wann die Datei das letzte mal - modifiziert wurde, oder FALSE wenn ein Fehler auftrat. Das Datum - wird als UNIX-Timestamp zurückgegeben. - </para> - <para> - Das Ergebnis dieses Funktionsaufrufes wird zwischengespeichert. - Siehe <function>clearstatcache</function> für weitere - Einzelheiten. - </para> - </refsect1> - </refentry> - - <refentry id="function.fileowner"> - <refnamediv> - <refname>fileowner</refname> - <refpurpose>Gibt den Dateieigentümer aus</refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>int <function>fileowner</function></funcdef> - <paramdef>string <parameter>filename</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - Gibt die Benutzer ID des Eigentümers einer Datei zurück, oder - FALSE wenn ein Fehler auftrat. Die Benutzer ID wird in - numerischem Format zurückgegeben und kann mit der Funktion - <function>posix_getpwuid</function> zum Benutzernamen aufgelöst - werden. - </para> - <para> - Das Ergebnis dieses Funktionsaufrufes wird zwischengespeichert. - Siehe <function>clearstatcache</function> für weitere - Einzelheiten. - </para> - <note> - <simpara> - Diese Funktion hat unter Windows keinen Effekt. - </simpara> - </note> - </refsect1> - </refentry> - - <refentry id="function.fileperms"> - <refnamediv> - <refname>fileperms</refname> - <refpurpose>Gibt die Zugriffsrechte einer Datei aus</refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>int <function>fileperms</function></funcdef> - <paramdef>string <parameter>filename</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - Gibt die Zugriffsrechte einer Datei zurück, oder FALSE wenn ein - Fehler auftrat. - </para> - <para> - Das Ergebnis dieses Funktionsaufrufes wird zwischengespeichert. - Siehe <function>clearstatcache</function> für weitere - Einzelheiten. - </para> - </refsect1> - </refentry> - - <refentry id="function.filesize"> - <refnamediv> - <refname>filesize</refname> - <refpurpose>Gibt die Größe einer Datei aus</refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>int <function>filesize</function></funcdef> - <paramdef>string <parameter>filename</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - Gibt die Größe einer Datei zurück, oder FALSE wenn ein Fehler - auftrat. - </para> - <para> - Das Ergebnis dieses Funktionsaufrufes wird zwischengespeichert. - Siehe <function>clearstatcache</function> für weitere - Einzelheiten. - </para> - </refsect1> - </refentry> - - <refentry id="function.filetype"> - <refnamediv> - <refname>filetype</refname> - <refpurpose>Gibt den Typ einer Datei zurück</refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>string <function>filetype</function></funcdef> - <paramdef>string <parameter>filename</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - Gibt den Typ einer Datei zurück. Mögliche Werte sind fifo, char, - dir, block, link, file und unknown. - </para> - <para> - Gibt FALSE zurück, wenn ein Fehler auftrat. - </para> - <para> - Das Ergebnis dieses Funktionsaufrufes wird zwischengespeichert. - Siehe <function>clearstatcache</function> für weitere - Einzelheiten. - </para> - </refsect1> - </refentry> - - <refentry id="function.flock"> - <refnamediv> - <refname>flock</refname> - <refpurpose>Portables Datei-Verriegelungs-Verfahren</refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>bool <function>flock</function></funcdef> - <paramdef>int <parameter>fp</parameter></paramdef> - <paramdef>int <parameter>operation</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <simpara> - PHP liefert einen portablen Weg, Dateien in einer "beratenden" - Art und Weise zu verriegeln. D.h. alle zugreifende Programme - müssen die gleiche Art und Weise der Verriegelung benutzen, oder - es funktioniert nicht. - </simpara> - <simpara> - <function>flock</function> arbeitet mit <parameter>fp</parameter> - welcher ein existierender Dateizeiger sein muss. Der Parameter - <parameter>operation</parameter> bestimmt die Art der - Verriegelung und kann einen der folgenden Werte annehmen: - </simpara> - <para> - <itemizedlist> - <listitem> - <simpara> - Um eine verteilte, nur lesende Verriegelung zu erhalten, - setzten Sie <parameter>operation</parameter> auf 1. - </simpara> - </listitem> - <listitem> - <simpara> - Um eine exklusive, nur schreibende Verriegelung zu erhalten, - setzen Sie <parameter>operation</parameter> auf 2. - </simpara> - </listitem> - <listitem> - <simpara> - Um eine Verriegelung freizugeben (lesend oder schreibend), - setzten Sie <parameter>operation</parameter> auf 3. - </simpara> - </listitem> - <listitem> - <simpara> - Wenn Sie Zugriffe während der Verriegelung durch - <function>flock</function> erlauben wollen, fügen Sie 4 zu - <parameter>operation</parameter> hinzu. - </simpara> - </listitem> - </itemizedlist> - </para> - <simpara> - <function>flock</function> erlaubt es Ihnen ein einfaches - Leser/Schreiber Modell zu erstellen, welches auf fast jedem - Betriebsystem benutzt werden kann (UNICES- und Windows- Systeme). - </simpara> - <simpara> - <function>flock</function> gibt TRUE bei Erfolg, FALSE wenn ein - Fehler auftrat (z.B. wenn eine Verriegelung nicht erstellt werden - konnte) zurück. - </simpara> - </refsect1> - </refentry> - - <refentry id="function.fopen"> - <refnamediv> - <refname>fopen</refname> - <refpurpose>Öffnet eine Datei oder URL</refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>int <function>fopen</function></funcdef> - <paramdef>string <parameter>filename</parameter></paramdef> - <paramdef>string <parameter>mode</parameter></paramdef> - <paramdef>int - <parameter> - <optional>use_include_path</optional> - </parameter> - </paramdef> - </funcprototype> - </funcsynopsis> - <simpara> - Wenn <parameter>filename</parameter> mit "http://" (nicht case - sensitive) beginnt, wird zu dem spezifiziertem Server eine HTTP - 1.0 Connection geöffnet und ein Dateizeiger auf den Anfang des - Textes der Antwort zurückgegeben. Ein 'Host:' header wird mit der - Anfrage geschickt, um namens-basierte Virtual Hosts zu verarbeiten. - </simpara> - <simpara> - Weiterleitungen (HTTP Redirects) werden nicht unterstützt, die - Datei muss daher vollständig und mit abschließendem "/" - beschrieben werden. - </simpara> - <simpara> - Wenn <parameter>filename</parameter> mit "ftp://" (nicht case - sensitive) beginnt, wird eine ftp-Connection zu dem - spezifiziertem Server geöffnet und ein Zeiger auf die - angeforderte Datei zurückgegeben. Wenn der Server keinen - passiven FTP-Modus unterstützt, wird diese Methode - fehlschlagen. Sie können Dateien entweder zum Schreiben oder zum - Lesen öffnen, jedoch nicht für beides gleichzeitig. - </simpara> - <simpara> - Wenn <parameter>filename</parameter> "php://stdin", - "php://stdout", oder "php://stderr" ist, wird der - korrespondierende stdio stream geöffnet (Feature wurde in Version - 3.0.13 eingeführt, in früheren Versionen muss der Dateiname wie - z.B. "/dev/stdin" oder "/dev/fd/0" benutzt werden, um auf die - stdio streams zuzugreifen). - </simpara> - <simpara> - Wenn <parameter>filename</parameter> mit irgendetwas anderem - beginnt, wird die Datei vom lokalen Dateisystem geöffnet und ein - Dateizeiger auf die geöffnete Datei zurückgegeben. - </simpara> - <simpara> - Wenn das Öffnen scheitert, gibt die Funktion FALSE zurück. - </simpara> - <para> - <parameter>mode</parameter> kann einen der folgenden Werte - einnehmen: - <itemizedlist> - <listitem> - <simpara> - 'r' - öffnet die Datei nur zum Lesen und positioniert den - Dateizeiger auf den Anfang der Datei. - </simpara> - </listitem> - <listitem> - <simpara> - 'r+' - Öffnet die Datei zum Lesen und Schreiben und setzt den - Dateizeiger auf den Anfang der Datei. - </simpara> - </listitem> - <listitem> - <simpara> - 'w' - Öffnet die Datei nur zum Schreiben und setzt den - Dateizeiger auf den Anfang der Datei sowie die Länge der Datei - auf 0 Byte. Wenn die Datei nicht existiert wird versucht sie - anzulegen. - </simpara> - </listitem> - <listitem> - <simpara> - 'w+' - Öffnet die Datei zum Lesen und Schreiben und setzt den - Dateizeiger auf den Anfang der Datei sowie die Länge der Datei - auf 0 Byte. Wenn die Datei nicht existiert, wird versucht sie - anzulegen. - </simpara> - </listitem> - <listitem> - <simpara> - 'a' - Öffnet die Datei nur zum Schreiben. Positioniert den - Dateizeiger auf das Ende der Datei. Wenn die Datei nicht - existiert, wird versucht sie anzulegen. - </simpara> - </listitem> - <listitem> - <simpara> - 'a+' - Öffnet die Datei zum Lesen und Schreiben. Positioniert - den Dateizeiger auf das Ende der Datei. Wenn die Datei nicht - existiert, wird versucht sie anzulegen. - </simpara> - </listitem> - </itemizedlist> - Zusätzlich kann <parameter>mode</parameter> der Buchstabe 'b' - hinzugefügt werden, der die Behandlung von Binär-Dateien - erlaubt. Dieses ist sinnvoll auf Systemen, welche zwischen Binär- - und Text-Dateien unterscheiden. Wenn das Feature nicht gebraucht - wird, wird es einfach ignoriert. - </para> - <para> - Sie können optional ein dritten Parameter benutzen und diesen auf - '1' setzten, wenn Sie auch im <link - linkend="ini.include-path">include_path</link> nach der Datei - suchen möchten. - </para> - <para> - <example> - <title>fopen() Beispiel</title> - <programlisting role="php"> -$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> - <simpara> - Wenn Sie Probleme haben mit dem Lesen oder Schreiben von Dateien - (Wenn Sie PHP als Servermodul benutzen), stellen Sie zunächst - sicher, dass die Dateien und Verzeichnisse die Sie benutzen - wollen auch für den Server-Prozeß zugänglich sind - (Rechtevergabe). - </simpara> - <para> - Achten Sie auf Windows-Systemen darauf, dass Sie als - Verzeichnistrenner normale Schrägstriche '/' benutzen um - plattformunabhängig programmieren zu können. Sollten Sie dennoch - Backslashes verwenden, vergessen Sie nicht diese zu escapen '\\' - <informalexample> - <programlisting role="php"> -$fp = fopen ("c:\\data\\info.txt", "r"); - </programlisting> - </informalexample> - </para> - <simpara> - Siehe auch <function>fclose</function>, - <function>fsockopen</function> und <function>popen</function>. - </simpara> - </refsect1> - </refentry> - - <refentry id="function.fpassthru"> - <refnamediv> - <refname>fpassthru</refname> - <refpurpose> - Gibt alle verbleibenden Daten eines Dateizeigers direkt aus. - </refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>int <function>fpassthru</function></funcdef> - <paramdef>int <parameter>fp</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <simpara> - Die Funktion liest alle Daten vom Dateizeiger bis EOF aus und - gibt die Daten auf der Standartausgabe (Browser) aus. - </simpara> - <simpara> - Wenn ein Fehler auftritt, gibt <function>fpassthru</function> - FALSE zurück. - </simpara> - <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äßt nutzlosen - <parameter>fp</parameter>-Dateizeiger). - </simpara> - <simpara> - Wenn Sie den Inhalt einer Datei nur auf der Standartausgabe - (Browser) ausgeben wollen, sollten Sie besser - <function>readfile</function> benutzen, bei der Sie nicht zuvor - die Datei mittels <function>fopen</function> geöffnet haben - müssen. - </simpara> - <simpara> - Siehe auch <function>readfile</function>, - <function>fopen</function>, <function>popen</function> und - <function>fsockopen</function> - </simpara> - </refsect1> - </refentry> - - <refentry id="function.fputs"> - <refnamediv> - <refname>fputs</refname> - <refpurpose> - Schreibt Daten an die Position des Dateizeigers - </refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>int <function>fputs</function></funcdef> - <paramdef>int <parameter>fp</parameter></paramdef> - <paramdef>string <parameter>str</parameter></paramdef> - <paramdef>int - <parameter> - <optional>length</optional> - </parameter> - </paramdef> - </funcprototype> - </funcsynopsis> - <para> - <function>Fputs</function> ist ein Alias für die Funktion - <function>fwrite</function>, und ist in jeder Hinsicht identisch - mit ihr. Beachten Sie, dass der Parameter - <parameter>length</parameter> optional ist, und dass, wenn er - nicht benutzt wird, die gesamte Zeichenkette geschrieben wird. - </para> - </refsect1> - </refentry> - - <refentry id="function.fread"> - <refnamediv> - <refname>fread</refname> - <refpurpose>Liest Binär-Dateien aus einer Datei</refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>string <function>fread</function></funcdef> - <paramdef>int <parameter>fp</parameter></paramdef> - <paramdef>int <parameter>length</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <simpara> - <function>Fread</function> liest <parameter>length</parameter> - Bytes vom Dateizeiger, maximal jedoch bis zum Dateiende. - </simpara> - <para> - <informalexample> - <programlisting role="php"> -// 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> - <simpara> - Siehe auch <function>fwrite</function>, - <function>fopen</function>, <function>fsockopen</function>, - <function>popen</function>, <function>fgets</function>, - <function>fgetss</function>, <function>file</function> und - <function>fpassthru</function>. - </simpara> - </refsect1> - </refentry> - - <refentry id="function.fscanf"> - <refnamediv> - <refname>fscanf</refname> - <refpurpose>Parses input from a file according to a format</refpurpose> - </refnamediv> - <refsect1> - <title>Description</title> - <funcsynopsis> - <funcprototype> - <funcdef>mixed <function>fscanf</function></funcdef> - <paramdef>int <parameter>handle</parameter></paramdef> - <paramdef>string <parameter>format</parameter></paramdef> - <paramdef>string - <parameter><optional>var1</optional></parameter>... - </paramdef> - </funcprototype> - </funcsynopsis> - <para> - The function <function>fscanf</function> is similar to - <function>sscanf</function>, but it takes its input from a file - associated with <parameter>handle</parameter> and interprets the - input according to the specified - <parameter>format</parameter>. If only two parameters were passed - to this function, the values parsed will be returned as an array. - Otherwise, if optional parameters are passed, the function will - return the number of assigned values. The optional parameters - must be passed by reference. - <example> - <title><function>Fscanf</function> Example</title> - <programlisting role="php"> -$fp = fopen ("users.txt","r"); -while ($userinfo = fscanf ($fp, "%s\t%s\t%s\n")) { - list ($name, $profession, $countrycode) = $userinfo; - //... do something with the values -} -fclose($fp); - </programlisting> - </example> - <example> - <title>users.txt</title> - <programlisting> -javier argonaut pe -hiroshi sculptor jp -robert slacker us -luigi florist it - </programlisting> - </example> - </para> - <para> - See also <function>fread</function>, <function>fgets</function>, - <function>fgetss</function>, <function>sscanf</function>, - <function>printf</function>, and <function>sprintf</function>. - </para> - </refsect1> - </refentry> - - <refentry id="function.fseek"> - <refnamediv> - <refname>fseek</refname> - <refpurpose> - Positioniert den Dateizeiger um einen Offset 'offset' vor oder - zurück - </refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>int <function>fseek</function></funcdef> - <paramdef>int <parameter>fp</parameter></paramdef> - <paramdef>int <parameter>offset</parameter></paramdef> - <paramdef>int <parameter><optional>whence</optional></parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - Setzt den Dateizeiger einer mit <parameter>fp</parameter> angegebenen - Datei auf eine neue Position. Diese neue Position, angegeben in Bytes - vom Begin der Datei an, wird definiert durch Hinzufügen von - <parameter>offset</parameter> zu der Position spezifiziert durch - <parameter>whence</parameter>, deren Werte wie folgt definiert sind: - <simplelist> - <member>SEEK_SET - Setzt Position gleich - <parameter>offset</parameter> bytes.</member> - <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> - </simplelist> - </para> - <para>Wenn <parameter>whence</parameter> nicht angegeben wurde, wird - SEEK_SET angenommen. - </para> - <para> - Bei Erfolg wird '0' zurückgegeben, andernfalls '-1'. Beachten - Sie, dass die Überschreitung des Dateiendes (EOF) nicht als - Fehler bewertet wird. - </para> - <para> - Diese Funktion sollte nicht auf Dateizeiger angewandt werden, die - durch die Verwendung von "http://" oder "ftp://" bei der Funktion - <function>fopen</function> erhalten wurden. - </para> - <para> - Siehe auch <function>ftell</function> und - <function>rewind</function>. - </para> - </refsect1> - </refentry> - - <refentry id="function.fstat"> - <refnamediv> - <refname>fstat</refname> - <refpurpose> - Gets information about a file using an open file pointer - </refpurpose> - </refnamediv> - <refsect1> - <title>Description</title> - <funcsynopsis> - <funcprototype> - <funcdef>array <function>fstat</function></funcdef> - <paramdef>int <parameter>fp</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - Gathers the statistics of the file opened by the file - pointer fp. This function is similar to the - <function>stat</function> function except that it operates - on an open file pointer instead of a filename. - </para> - <para> - Returns an array with the statistics of the file with the - following elements: - <orderedlist> - <listitem><simpara>device</simpara></listitem> - <listitem><simpara>inode</simpara></listitem> - <listitem><simpara>number of links</simpara></listitem> - <listitem><simpara>user id of owner</simpara></listitem> - <listitem><simpara>group id owner</simpara></listitem> - <listitem><simpara>device type if inode device *</simpara></listitem> - <listitem><simpara>size in bytes</simpara></listitem> - <listitem><simpara>time of last access</simpara></listitem> - <listitem><simpara>time of last modification</simpara></listitem> - <listitem><simpara>time of last change</simpara></listitem> - <listitem><simpara>blocksize for filesystem I/O *</simpara></listitem> - <listitem><simpara>number of blocks allocated</simpara></listitem> - </orderedlist> - * - only valid on systems supporting the st_blksize type--other - systems (i.e. Windows) return -1</para> - <para> - The results of this function are cached. See - <function>clearstatcache</function> for more details. - </para> - </refsect1> - </refentry> - - <refentry id="function.ftell"> - <refnamediv> - <refname>ftell</refname> - <refpurpose> - Ermittelt die aktuelle Position des Dateizeigers - </refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>int <function>ftell</function></funcdef> - <paramdef>int <parameter>fp</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - Gibt die aktuelle Position des Dateizeigers - <parameter>fp</parameter> zurück, z.B. seinen Offset im - Dateistream. - </para> - <para> - Wenn ein Fehler auftritt, wird FALSE zurückgegeben. - </para> - <para> - 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. - </para> - <para> - Siehe auch <function>fopen</function>, - <function>popen</function>, <function>fseek</function> und - <function>rewind</function>. - </para> - </refsect1> - </refentry> - - <refentry id="function.ftruncate"> - <refnamediv> - <refname>ftruncate</refname> - <refpurpose> - Truncates a file to a given length. - </refpurpose> - </refnamediv> - <refsect1> - <title>Description</title> - <funcsynopsis> - <funcprototype> - <funcdef>int <function>ftruncate</function></funcdef> - <paramdef>int <parameter>fp</parameter></paramdef> - <paramdef>int <parameter>size</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - Takes the filepointer, fp, and truncates the file to length, size. - This function returns true on success and false on failure. - </para> - </refsect1> - </refentry> - - <refentry id="function.fwrite"> - <refnamediv> - <refname>fwrite</refname> - <refpurpose>Schreibt Binärdaten in eine Datei</refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>int <function>fwrite</function></funcdef> - <paramdef>int <parameter>fp</parameter></paramdef> - <paramdef>string <parameter>string</parameter></paramdef> - <paramdef>int - <parameter> - <optional>length</optional> - </parameter> - </paramdef> - </funcprototype> - </funcsynopsis> - <simpara> - <function>Fwrite</function> schreibt den Inhalt einer - Zeichenkette <parameter>string</parameter> in die Datei, auf - welche der <parameter>fp</parameter> Dateizeiger zeigt. Wenn der - <parameter>length</parameter> Parameter gegeben ist, wird das - Schreiben nach <parameter>length</parameter> Bytes beendet, oder - wenn das Dateiende (EOF) erreicht ist, je nachdem, was eher - eintritt. - </simpara> - <simpara> - Bedenken Sie, dass wenn der <parameter>length</parameter> - Parameter gesetzt ist, die <link - linkend="ini.magic-quotes-runtime">magic_quotes_runtime</link> - Konfigurations-Option ignoriert wird und somit keine Slashes mehr - von der Zeichenkette <parameter>string</parameter> entfernt - werden. - </simpara> - <simpara> - Siehe auch <function>fread</function>, - <function>fopen</function>, <function>fsockopen</function>, - <function>popen</function> und <function>fputs</function>. - </simpara> - </refsect1> - </refentry> - - <refentry id="function.set-file-buffer"> - <refnamediv> - <refname>set_file_buffer</refname> - <refpurpose> - Setzt die Dateipufferung für einen gegebenen Dateizeiger - </refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>int <function>set_file_buffer</function></funcdef> - <paramdef>int <parameter>fp</parameter></paramdef> - <paramdef>int <parameter>buffer</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <simpara> - <function>set_file_buffer</function> setzt die Pufferung für - Schreiboperationen eines gegebenen Dateizeigers - <parameter>fp</parameter> auf <parameter>buffer</parameter> - Bytes. Wenn <parameter>buffer</parameter> auf 0 gesetzt ist oder - 0 ist, wird die Schreibpufferung ausgeschaltet. - </simpara> - <simpara> - Die Funktion gibt 0 bei Erfolg, oder EOF wenn die Anfrage nicht - erfolgreich war zurück. - </simpara> - <simpara> - Bedenken Sie, dass der Standartwert beim Aufruf von - <function>fopen</function> mit set_file_buffer immer 8K ist. - </simpara> - <simpara> - Siehe auch <function>fopen</function>. - </simpara> - </refsect1> - </refentry> - - <refentry id="function.is-dir"> - <refnamediv> - <refname>is_dir</refname> - <refpurpose> - Ermittelt, ob der gegebene Dateiname ein Verzeichnis ist - </refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>bool <function>is_dir</function></funcdef> - <paramdef>string <parameter>filename</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - Gibt TRUE zurück, wenn der Dateiname existiert und es sich - hierbei um ein Verzeichnis handelt. - </para> - <para> - Das Ergebnis dieses Funktionsaufrufes wird zwischengespeichert. - Siehe auch <function>clearstatcache</function> für weitere - Einzelheiten. - </para> - <para> - Siehe auch <function>is_file</function> und - <function>is_link</function>. - </para> - </refsect1> - </refentry> - - <refentry id="function.is-executable"> - <refnamediv> - <refname>is_executable</refname> - <refpurpose> - Ermittelt, ob eine Datei ausführbar ist - </refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>bool <function>is_executable</function></funcdef> - <paramdef>string <parameter>filename</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - Gibt TRUE zurück, wenn die Datei existiert und ausführbar ist. - </para> - <para> - Das Ergebnis dieses Funktionsaufrufes wird zwischengespeichert. - Siehe auch <function>clearstatcache</function> für weitere - Einzelheiten. - </para> - <para> - Siehe auch <function>is_file</function> und - <function>is_link</function>. - </para> - </refsect1> - </refentry> - - <refentry id="function.is-file"> - <refnamediv> - <refname>is_file</refname> - <refpurpose> - Ermittelt, ob der Dateiname eine reguläre Datei ist - </refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>bool <function>is_file</function></funcdef> - <paramdef>string <parameter>filename</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - Gibt TRUE zurück, wenn die Datei existiert und eine reguläre - Datei ist. - </para> - <para> - Das Ergebnis dieses Funktionsaufrufes wird zwischengespeichert. - Siehe auch <function>clearstatcache</function> für weitere - Einzelheiten. - </para> - <para> - Siehe auch <function>is_dir</function> und - <function>is_link</function>. - </para> - </refsect1> - </refentry> - - <refentry id="function.is-link"> - <refnamediv> - <refname>is_link</refname> - <refpurpose> - Ermittelt, ob der Dateiname ein synmbolischer Link ist - </refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>bool <function>is_link</function></funcdef> - <paramdef>string <parameter>filename</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - Gibt TRUE zurück, wenn der Dateiname existiert und es sich um - einen symbolischen Link handelt. - </para> - <para> - Das Ergebnis dieses Funktionsaufrufes wird zwischengespeichert. - Siehe auch <function>clearstatcache</function> für weitere - Einzelheiten. - </para> - <para> - Siehe auch <function>is_dir</function> und - <function>is_file</function>. - </para> - <note> - <simpara> - Diese Funktion hat auf Windows-Systemen keinen Effekt. - </simpara> - </note> - </refsect1> - </refentry> - - <refentry id="function.is-readable"> - <refnamediv> - <refname>is_readable</refname> - <refpurpose> - Ermittelt ob eine Datei lesbar ist - </refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>bool <function>is_readable</function></funcdef> - <paramdef>string <parameter>filename</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - Gibt TRUE zurück wenn die Datei existiert und sie lesbar ist. - </para> - <para> - Bedenken Sie, dass PHP mit der Benutzer ID auf die Datei - zugreift, unter der der Webserver läuft (oftmals ist dieses - 'nobody'). Beschränkungen durch safe_mode werden nicht - berücksichtigt. - </para> - <para> - Das Ergebnis dieses Funktionsaufrufes wird zwischengespeichert. - Siehe auch <function>clearstatcache</function> für weitere - Einzelheiten. - </para> - <para> - Siehe auch <function>is_writeable</function>. - </para> - </refsect1> - </refentry> - - <refentry id="function.is-writeable"> - <refnamediv> - <refname>is_writeable</refname> - <refpurpose> - Ermittelt, ob in eine Datei geschrieben werden kann - </refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>bool <function>is_writeable</function></funcdef> - <paramdef>string <parameter>filename</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - Gibt TRUE zurück, wenn die Datei existiert und nicht - schreibgeschützt ist. Das Dateinamen-Argument kann ein - Verzeichnisname sein. So können Sie überprüfen, ob in ein - Verzeichnis geschrieben werden kann. - </para> - <para> - Bedenken Sie, dass PHP mit der Benutzer ID auf die Datei - zugreift, unter der der Webserver läuft (oftmals ist dieses - 'nobody'). Beschränkungen durch safe_mode werden nicht - berücksichtigt. - </para> - <para> - Das Ergebnis dieses Funktionsaufrufes wird zwischengespeichert. - Siehe auch <function>clearstatcache</function> für weitere - Einzelheiten. - </para> - <para> - Siehe auch <function>is_readable</function>. - </para> - </refsect1> - </refentry> - - <refentry id="function.is-uploaded-file"> - <refnamediv> - <refname>is_uploaded_file</refname> - <refpurpose>Tells whether the file was uploaded via HTTP POST.</refpurpose> - </refnamediv> - <refsect1> - <title>Description</title> - <funcsynopsis> - <funcprototype> - <funcdef>bool <function>is_uploaded_file</function></funcdef> - <paramdef>string <parameter>filename</parameter></paramdef> - </funcprototype> - </funcsynopsis> - - <para> - This function is available only in versions of PHP 3 after PHP - 3.0.16, and in versions of PHP 4 after 4.0.2. - </para> - - <para> - Returns true if the file named by <varname>filename</varname> was - uploaded via HTTP POST. This is useful to help ensure that a - malicious user hasn't tried to trick the script into working on - files upon which it should not be working--for instance, - <filename>/etc/passwd</filename>. - </para> - - <para> - This sort of check is especially important if there is any chance - that anything done with uploaded files could reveal their - contents to the user, or even to other users on the same - system. - </para> - - <para> - See also <function>move_uploaded_file</function>, and the section - <link linkend="features.file-upload">Handling file uploads</link> - for a simple usage example. - </para> - </refsect1> - </refentry> - - <refentry id="function.link"> - <refnamediv> - <refname>link</refname> - <refpurpose>Erzeugt einen absoluten Link</refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>int <function>link</function></funcdef> - <paramdef>string <parameter>target</parameter></paramdef> - <paramdef>string <parameter>link</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - <function>Link</function> erzeugt einen absoluten Link mit dem - Ziel <parameter>target</parameter>. - </para> - <para> - Siehe auch <function>symlink</function> um symbolische Links zu - erstellen und <function>readlink</function> zusammen mit - <function>linkinfo</function>. - </para> - <note> - <simpara> - Diese Funktion hat unter Windows-Systemen keinen Effekt. - </simpara> - </note> - </refsect1> - </refentry> - - <refentry id="function.linkinfo"> - <refnamediv> - <refname>linkinfo</refname> - <refpurpose>Ermittelt Informationen über einen Link</refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>int <function>linkinfo</function></funcdef> - <paramdef>string <parameter>path</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - <function>Linkinfo</function> gibt das st_dev Feld des UNIX C - stat structure resultierend aus dem lstat System Call - zurück. Diese Funktion wird benutzt, um zu verifizieren ob ein - Link (auf den mit <parameter>path</parameter> gezeigt wird) - wirklich exisitiert (Hierbei wird die gleiche Methode benutzt, - die in dem S_ISLNK Makro in stat.h definiert ist). Gibt 0 oder - FALSE zurück wenn ein Fehler auftrat. - </para> - <para> - Siehe auch <function>symlink</function>, - <function>link</function>, und <function>readlink</function>. - </para> - <note> - <simpara> - Diese Funktion hat unter Windows keinen Effekt. - </simpara> - </note> - </refsect1> - </refentry> - - <refentry id="function.mkdir"> - <refnamediv> - <refname>mkdir</refname> - <refpurpose>Erstellt ein Verzeichnis</refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>int <function>mkdir</function></funcdef> - <paramdef>string <parameter>pathname</parameter></paramdef> - <paramdef>int <parameter>mode</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - Versucht ein Verzeichnis mit dem spezifiziertem Namen zu - erstellen. - </para> - <para> - Bedenken Sie, dass sie wahrscheinlich den Mode als oktalen - Wert spezifizieren wollen, was bedeutet, dass er eine - voranstehende Null haben sollte. - <informalexample> - <programlisting role="php"> -mkdir ("/path/to/my/dir", 0700); - </programlisting> - </informalexample> - </para> - <para> - Gibt TRUE bei Erfolg, andernfalls FALSE zurück. - </para> - <para> - Siehe auch <function>rmdir</function>. - </para> - </refsect1> - </refentry> - - <refentry id="function.move-uploaded-file"> - <refnamediv> - <refname>move_uploaded_file</refname> - <refpurpose>Moves an uploaded file to a new location.</refpurpose> - </refnamediv> - <refsect1> - <title>Description</title> - <funcsynopsis> - <funcprototype> - <funcdef>bool <function>move_uploaded_file</function></funcdef> - <paramdef>string <parameter>filename</parameter></paramdef> - <paramdef>string <parameter>destination</parameter></paramdef> - </funcprototype> - </funcsynopsis> - - <para> - This function is available only in versions of PHP 3 after PHP - 3.0.16, and in versions of PHP 4 after 4.0.2. - </para> - - <para> - This function checks to ensure that the file designated by - <parameter>filename</parameter> is a valid upload file (meaning - that it was uploaded via PHP's HTTP POST upload mechanism). If - the file is valid, it will be moved to the filename given by - <parameter>destination</parameter>. - </para> - - <para> - If <parameter>filename</parameter> is not a valid upload file, - then no action will occur, and - <function>move_uploaded_file</function> will return - <literal>false</literal>. - </para> - - <para> - If <parameter>filename</parameter> is a valid upload file, but - cannot be moved for some reason, no action will occur, and - <function>move_uploaded_file</function> will return - <literal>false</literal>. Additionally, a warning will be issued. - </para> - - <para> - This sort of check is especially important if there is any chance - that anything done with uploaded files could reveal their - contents to the user, or even to other users on the same - system. - </para> - - <para> - See also <function>is_uploaded_file</function>, and the section - <link linkend="features.file-upload">Handling file uploads</link> - for a simple usage example. - </para> - </refsect1> - </refentry> - - - <refentry id="function.pathinfo"> - <refnamediv> - <refname>pathinfo</refname> - <refpurpose>Returns information about a file path</refpurpose> - </refnamediv> - <refsect1> - <title>Description</title> - <funcsynopsis> - <funcprototype> - <funcdef>array <function>pathinfo</function></funcdef> - <paramdef>string <parameter>path</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - <function>pathinfo</function> returns an associative array - containing information about <parameter>path</parameter>. The - following array elements are returned: - <parameter>dirname</parameter>, <parameter>basename</parameter> - and <parameter>extension</parameter>. - </para> - <para> - <example> - <title><function>pathinfo</function> Example</title> - <programlisting role="php"> -<?php - -$path_parts = pathinfo("/www/htdocs/index.html"); - -echo $path_parts["dirname"] . "\n"; -echo $path_parts["basename"] . "\n"; -echo $path_parts["extension"] . "\n"; - -?> - </programlisting> - </example> - </para> - <para> - Would produce: - <informalexample> - <programlisting> -/www/htdocs -index.html -html - </programlisting> - </informalexample> - </para> - <para> - See also <function>dirname</function>, - <function>basename</function> and <function>realpath</function>. - </para> - </refsect1> - </refentry> - - <refentry id="function.pclose"> - <refnamediv> - <refname>pclose</refname> - <refpurpose>Schließt einen Prozess-Dateizeiger</refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>int <function>pclose</function></funcdef> - <paramdef>int <parameter>fp</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - Schließt einen Prozess-Dateizeiger, der durch einen Aufruf von - <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. - </para> - <para> - Gibt den End-Status eines laufenden Prozesses zurück. - </para> - <para> - Siehe auch <function>popen</function>. - </para> - </refsect1> - </refentry> - - <refentry id="function.popen"> - <refnamediv> - <refname>popen</refname> - <refpurpose>Öffnet einen Prozesszeiger</refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>int <function>popen</function></funcdef> - <paramdef>string <parameter>command</parameter></paramdef> - <paramdef>string <parameter>mode</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - Öffnet eine Verbindung zu einem Prozess, der durch die Anweisung - <parameter>command</parameter> ausgeführt wurde. - </para> - <para> - Gibt einen Dateizeiger zurück, der identisch ist mit dem, der bei - der Funktion <function>fopen</function> zurückgegeben wird, - ausser dass dieser nur in eine Richtung funktioniert (entweder - lesend oder schreibend) und mit der Funktion - <function>pclose</function> geschlossen werden muss. Dieser - Zeiger kann mit den Funktionen <function>fgets</function>, - <function>fgetss</function> und <function>fputs</function> - benutzt werden. - </para> - <para> - Wenn ein Fehler auftritt, gibt diese Funktion FALSE zurück. - </para> - <para> - <informalexample> - <programlisting role="php"> -$fp = popen ("/bin/ls", "r"); - </programlisting> - </informalexample> - </para> - <para> - Siehe auch <function>pclose</function>. - </para> - </refsect1> - </refentry> - - <refentry id="function.readfile"> - <refnamediv> - <refname>readfile</refname> - <refpurpose>Gibt eine Datei aus</refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>int <function>readfile</function></funcdef> - <paramdef>string <parameter>filename</parameter></paramdef> - <paramdef>int - <parameter> - <optional>use_include_path</optional> - </parameter> - </paramdef> - </funcprototype> - </funcsynopsis> - <para> - Liest den Inhalt einer Datei und gibt ihn an der Standartausgabe - (Browser) aus. - </para> - <para> - Gibt die Anzahl der Bytes einer Datei zurück. Wenn ein Fehler - auftritt wird FALSE zurückgegeben und eine Fehlermeldung wird auf - der Standartausgabe ausgegeben. Die Ausgabe einer Fehlermeldung - kann durch Voranstellen eines '@' verhindert werden (@readfile). - </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 - die Standartausgabe geschrieben. - </para> - <para> - Weiterleitungen (HTTP Redirects) werden nicht unterstützt, daher - muss die Datei vollständig mit abschliessendem '/' geschrieben - werden. - </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 - auf der Standartausgabe ausgegeben. Wenn der Server keinen - passiven Mode unterstützt, wird diese Funktion fehlschlagen. - </para> - <para> - Wenn <parameter>filename</parameter> mit keinem dieser - Zeichenketten beginnt, wird die Datei vom lokalen Dateisystem - geöffnet und ihr Inhalt auf der Standartausgabe ausgegeben. - </para> - <para> - Sie können optional den zweiten Paratmeter benutzen und diesen - auf '1' setzen, wenn Sie auch im <link - linkend="ini.include-path"> include_path</link> nach der Datei - suchen möchten. - </para> - <para> - Siehe auch <function>fpassthru</function>, - <function>file</function>, <function>fopen</function>, - <function>include</function>, <function>require</function> und - <function>virtual</function>. - </para> - </refsect1> - </refentry> - - <refentry id="function.readlink"> - <refnamediv> - <refname>readlink</refname> - <refpurpose> - Gibt das Ziel eines symbolischen Links zurück - </refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>string <function>readlink</function></funcdef> - <paramdef>string <parameter>path</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - <function>Readlink</function> ist von der Funktionalität her - identisch mit der 'readlink C Funktion' und gibt den Inhalt des - Pfades des symbolischen Links zurück oder 0, wenn der Aufruf - fehlschlug. - </para> - <para> - Siehe auch <function>symlink</function>, - <function>readlink</function> und <function>linkinfo</function>. - </para> - <note> - <simpara> - Diese Funktion hat unter Windows keinen Effekt. - </simpara> - </note> - </refsect1> - </refentry> - - <refentry id="function.rename"> - <refnamediv> - <refname>rename</refname> - <refpurpose>Benennt eine Datei um</refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>int <function>rename</function></funcdef> - <paramdef>string <parameter>oldname</parameter></paramdef> - <paramdef>string <parameter>newname</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - Versucht eine Datei <parameter>oldname</parameter> in - <parameter>newname</parameter> umzubenennen. - </para> - <para> - Gibt TRUE bei Erfolg, andernfalls FALSE zurück. - </para> - </refsect1> - </refentry> - - <refentry id="function.rewind"> - <refnamediv> - <refname>rewind</refname> - <refpurpose> - Setzt den Dateizeiger auf das erste Byte der Datei - </refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>int <function>rewind</function></funcdef> - <paramdef>int <parameter>fp</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - Setzt den Dateizeiger (Datei-Positions-Indikator) für - <parameter>fp</parameter> an den Anfang des Dateistreams. - </para> - <para> - Wenn ein Fehler auftritt, gibt der Funktionsaufruf 0 zurück. - </para> - <para> - Der Dateizeiger muss gültig sein und auf eine Datei zeigen, die - zuvor erfolgreich durch <function>fopen</function> geöffnet - wurde. - </para> - <para> - Siehe auch <function>fseek</function> und - <function>ftell</function>. - </para> - </refsect1> - </refentry> - - <refentry id="function.rmdir"> - <refnamediv> - <refname>rmdir</refname> - <refpurpose>Löscht ein Verzeichnis</refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>int <function>rmdir</function></funcdef> - <paramdef>string <parameter>dirname</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <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> - Wenn ein Fehler auftritt wird 0 zurückgegeben. - </para> - <para> - Siehe auch <function>mkdir</function>. - </para> - </refsect1> - </refentry> - - <refentry id="function.stat"> - <refnamediv> - <refname>stat</refname> - <refpurpose> - Ermittelt diverse Informationen über eine Datei - </refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>array <function>stat</function></funcdef> - <paramdef>string <parameter>filename</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - Versucht Informationen über eine Datei spezifiziert in - <parameter>filename</parameter> auszugeben. - </para> - <para> - Gibt einen Array mit folgenden statistischen Informationen als - Array- Elemente zurück: - <orderedlist> - <listitem> - <simpara>Laufwerk</simpara> - </listitem> - <listitem> - <simpara>inode</simpara> - </listitem> - <listitem> - <simpara>inode protection mode</simpara> - </listitem> - <listitem> - <simpara>Anzahl der Links</simpara> - </listitem> - <listitem> - <simpara>Benutzer ID des Inhabers</simpara> - </listitem> - <listitem> - <simpara>Gruppen ID des Inhabers</simpara> - </listitem> - <listitem> - <simpara>Laufwerkstyp wenn Inode-Laufwerk *</simpara> - </listitem> - <listitem> - <simpara>Größe in Bytes</simpara> - </listitem> - <listitem> - <simpara>Zeitpunkt des letzten Zugriffs</simpara> - </listitem> - <listitem> - <simpara>Zeitpunkt der letzten Modifizierung</simpara> - </listitem> - <listitem> - <simpara>Zeitpunkt der letzten Änderung</simpara> - </listitem> - <listitem> - <simpara>Blockgröße für das Dateisystem I/O *</simpara> - </listitem> - <listitem> - <simpara>Anzahl der zugewiesenen Blöcke</simpara> - </listitem> - </orderedlist> - * - nur gültig auf Systemen, die st_blksize unterstützen. Andere - Systeme (z.B. Windows) geben '-1' zurück. - </para> - <para> - Das Ergebnis dieses Funktionsaufrufes wird zwischengespeichert. - Siehe auch <function>clearstatcache</function> für weitere - Einzelheiten. - </para> - </refsect1> - </refentry> - - <refentry id="function.lstat"> - <refnamediv> - <refname>lstat</refname> - <refpurpose> - Ermittelt Informationen über einen symbolischen Link. - </refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>array <function>lstat</function></funcdef> - <paramdef>string <parameter>filename</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - Ermittelt statistische Informationen über einen symbolischen Link - spezifiziert in <parameter>filename</parameter>. Diese Funktion - ist identisch mit der Funktion <function>stat</function> ausser - dass, wenn der Parameter <parameter>filename</parameter> ein - symbolischer Link ist, dessen Status zurückgegeben wird und nicht - der Status der Datei, auf die der symbolische Link zeigt. - </para> - <para> - Gibt einen Array mit statistischen Informationen über die Datei - als Array-Elemente zurück: - <orderedlist> - <listitem> - <simpara>Laufwerk</simpara> - </listitem> - <listitem> - <simpara>inode</simpara> - </listitem> - <listitem> - <simpara>Anzahl der Links</simpara> - </listitem> - <listitem> - <simpara>Benutzer ID des Inhabers</simpara> - </listitem> - <listitem> - <simpara>Gruppen ID des Inhabers</simpara> - </listitem> - <listitem> - <simpara>Laufwerkstyp wenn inode Laufwerk *</simpara> - </listitem> - <listitem> - <simpara>Größe in Bytes</simpara> - </listitem> - <listitem> - <simpara>Zeitpunkt des letzten Zugriffs</simpara> - </listitem> - <listitem> - <simpara>Zeitpunkt der letzten Modifikation</simpara> - </listitem> - <listitem> - <simpara>Zeitpunkt der letzen Änderung</simpara> - </listitem> - <listitem> - <simpara>Blockgröße für das Dateisystem I/O *</simpara> - </listitem> - <listitem> - <simpara>Anzahl der zugewiesenen Blöcke</simpara> - </listitem> - </orderedlist> - * - nur gültig auf Systemen, die st_blksize unterstützen. Andere - Systeme (z.B. Windows) geben '-1' zurück. - </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> - <refpurpose>Return canonicalized absolute pathname</refpurpose> - </refnamediv> - <refsect1> - <title>Description</title> - <funcsynopsis> - <funcprototype> - <funcdef>string <function>realpath</function></funcdef> - <paramdef>string <parameter>path</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - <function>realpath</function> expands all symbolic links and - resolves references to '/./', '/../' and extra '/' characters in - the input <parameter>path</parameter> and return the canonicalized - absolute pathname. The resulting path will have no symbolic link, - '/./' or '/../' components. - </para> - - <para> - <example> - <title><function>realpath</function> example</title> - <programlisting role="php"> -$real_path = realpath("../../index.php"); - </programlisting> - </example> - </para> - </refsect1> - </refentry> - - <refentry id="function.symlink"> - <refnamediv> - <refname>symlink</refname> - <refpurpose>Erzeugt einen symbolischen Link</refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>int <function>symlink</function></funcdef> - <paramdef>string <parameter>target</parameter></paramdef> - <paramdef>string <parameter>link</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - <function>Symlink</function> erzeugt einen symbolischen Link von - dem gegebenen Parameter <parameter>target</parameter> mit dem - spezifiziertem Namen <parameter>link</parameter>. - </para> - <para> - Siehe auch <function>link</function> um absolute Links zu - erstellen, und <function>readlink</function> zusammmen mit - <function>linkinfo</function>. - </para> - <note> - <simpara> - Diese Funktion hat unter Windows-Systemen keinen Effekt. - </simpara> - </note> - </refsect1> - </refentry> - - <refentry id="function.tempnam"> - <refnamediv> - <refname>tempnam</refname> - <refpurpose>Erzeugt einen eindeutigen Dateinamen</refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>string <function>tempnam</function></funcdef> - <paramdef>string <parameter>dir</parameter></paramdef> - <paramdef>string <parameter>prefix</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - Erzeugt einen eindeutigen einmaligen temporären Dateinamen in dem - spezifizierten Verzeichnis. Wenn das Verzeichnis nicht existiert, - wird <function>tempnam</function> einen Dateinamen im temporären - Verzeichnis des Systems erstellen. - </para> - <para> - Das Verhalten von <function>tempnam</function> ist - systemabhängig. Unter Windows wird die TMP-Umgebungsvariable den - <parameter>dir</parameter> Parameter überschreiben, unter - Linux-Systemen hat die TMPDIR Umgebungsvariable Vorrang, während - SVR4 immer den spezifizierten Verzeichnisnamen benutzen wird, - wenn dieses existiert. Wenn Sie nicht genau wissen, wie Ihr - System <function>tempnam</function> behandelt, dann konsultieren - Sie bitte Ihre System-Dokumentation. - </para> - <para> - Gibt den neuen temporären Dateinamen bei Erfolg, oder eine - NULL-Zeichenkette wenn ein Fehler auftritt zurück. - <example> - <title><function>Tempnam</function> Beispiel</title> - <programlisting role="php"> -$tmpfname = tempnam ("/tmp", "FOO"); - </programlisting> - </example> - </para> - <para> - Siehe auch <function>tmpfile</function>. - </para> - </refsect1> - </refentry> - - <refentry id="function.tmpfile"> - <refnamediv> - <refname>tmpfile</refname> - <refpurpose>Legt eine temporäre Datei an</refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>int <function>tmpfile</function></funcdef> - <paramdef>void</paramdef> - </funcprototype> - </funcsynopsis> - <para> - Erstellt eine temporäre Datei mit einem eindeutigen - Dateinamen im Schreibmodus und gibt einen Dateizeiger - ähnlich wie es bei der Funktion <function>fopen</function> - erfolgt, zurück. Die Datei wird automatisch gelöscht, wenn - sie geschlossen wird (mit <function>fclose</function>), oder - das Skript beendet wird. - </para> - <para> - Für Details konsultieren Sie bitte die Dokumentation Ihres - Betriebssystems bzgl. der <literal>tmpfile(3)</literal> Funktion, - wie auch die <filename>stdio.h</filename> Header-Datei. - </para> - <para> - Siehe auch <function>tempnam</function>. - </para> - </refsect1> - </refentry> - - <refentry id="function.touch"> - <refnamediv> - <refname>touch</refname> - <refpurpose> - Setzt das Datum der letzten Änderung einer Datei - </refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>int <function>touch</function></funcdef> - <paramdef>string <parameter>filename</parameter></paramdef> - <paramdef>int - <parameter> - <optional>time</optional> - </parameter> - </paramdef> - </funcprototype> - </funcsynopsis> - <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. - </para> - <para> - Wenn die Datei nicht existiert, wird sie erzeugt. - </para> - <para> - Gibt TRUE bei Erfolg, andernfalls FALSE zurück. - <example> - <title><function>Touch</function> Beispiel</title> - <programlisting role="php"> -if (touch ($DateiName)) { - print "$DateiName Modifizierungs-Zeit wurde auf das aktuelle - Datum und und die aktuelle Uhrzeit gesetzt."; -} else { - print "Tut mir leid, Modifikations-Zeit von $DateiName konnte - nicht geändert werden."; -} - </programlisting> - </example> - </para> - </refsect1> - </refentry> - - <refentry id="function.umask"> - <refnamediv> - <refname>umask</refname> - <refpurpose> - Ändert die aktuelle umask (Zugriffsrechte) - </refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>int <function>umask</function></funcdef> - <paramdef>int <parameter>mask</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - <function>Umask</function> setzt PHP's umask auf - <parameter>mask</parameter> & 0777 und gibt die alte umask - zurück. Wenn PHP als Servermodul benutzt wird, wird die umask - zurückgespeichert wenn die jeweilige Anfrage beendet ist. - </para> - <para> - <function>Umask</function> ohne Argumente gibt einfach die - aktuelle umask zurück. - </para> - </refsect1> - </refentry> - - <refentry id="function.unlink"> - <refnamediv> - <refname>unlink</refname> - <refpurpose>Löscht eine Datei</refpurpose> - </refnamediv> - <refsect1> - <title>Beschreibung</title> - <funcsynopsis> - <funcprototype> - <funcdef>int <function>unlink</function></funcdef> - <paramdef>string <parameter>filename</parameter></paramdef> - </funcprototype> - </funcsynopsis> - <para> - Löscht <parameter>filename</parameter>. Ähnlich der UNIX C - unlink() Funktion. - </para> - <para> - Gibt 0 oder FALSE zurück, wenn ein Fehler auftritt. - </para> - <para> - Siehe auch <function>rmdir</function> um Verzeichnisse zu löschen. - </para> - <note> - <simpara> - Diese Funktion bleibt unter Windows-Systemen ohne Effekt. - </simpara> - </note> - </refsect1> - </refentry> - </reference> - -<!-- 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 -sgml-parent-document:nil -sgml-default-dtd-file:"../../manual.ced" -sgml-exposed-tags:nil -sgml-local-catalogs:nil -sgml-local-ecat-files:nil -End: ---> - + <reference id="ref.filesystem"> + <title>Funktionen des Dateisystems</title> + <titleabbrev>Filesystem</titleabbrev> + + <refentry id="function.basename"> + <refnamediv> + <refname>basename</refname> + <refpurpose> + Gibt den Namen einer Datei aus einer vollständigen Pfadangabe + zurück + </refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>string <function>basename</function></funcdef> + <paramdef>string <parameter>path</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + Diese Funktion extrahiert aus einer vollständigen Pfadangabe den + Namen der Datei und gibt diesen zurück. + </para> + <para> + Unter Windows wird sowohl der Slash (<literal>/</literal>) als + auch der Backslash (<literal>\</literal>) als Trennzeichen bei + Pfadangaben benutzt. Unter anderen Betriebssystemen hingegen nur + der Slash (<literal>/</literal>). + </para> + <para> + <example> + <title><function>Basename</function> Beispiel</title> + <programlisting role="php"> +$path = "/home/httpd/html/index.php3"; +$file = basename($path); // $file enthält den Wert "index.php3" + </programlisting> + </example> + </para> + <para> + Siehe auch <function>dirname</function>. + </para> + </refsect1> + </refentry> + + <refentry id="function.chgrp"> + <refnamediv> + <refname>chgrp</refname> + <refpurpose> + Wechselt die Gruppenzugehörigkeit einer Datei + </refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>int <function>chgrp</function></funcdef> + <paramdef>string <parameter>filename</parameter></paramdef> + <paramdef>mixed <parameter>group</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + Weist einer Datei einer 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 + ä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> + </refsect1> + </refentry> + + <refentry id="function.chmod"> + <refnamediv> + <refname>chmod</refname> + <refpurpose>Ändert die Zugriffsrechte einer Datei</refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>int <function>chmod</function></funcdef> + <paramdef>string <parameter>filename</parameter></paramdef> + <paramdef>int <parameter>mode</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + Diese Funktion ändert die Zugriffsrechte der Datei spezifiziert + in <parameter>filename</parameter> in die Zugriffsrechte um, die + in <parameter>mode</parameter> spezifiziert sind. + </para> + <para> + Bedenken Sie, das <parameter>mode</parameter> nicht automatisch + für einen Oktalwert gehalten wird. Um sicher zu gehen, dass die + Operation wie erwartet verläuft sollten Sie + <parameter>mode</parameter> mit dem Prefix Null (0) versehen: + <informalexample> + <programlisting role="php"> +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. + </para> + <para> + Siehe auch <function>chown</function> und + <function>chgrp</function>. + </para> + <note> + <simpara> + Diese Funktion bleibt unter Windows-Systemen ohne Effekt. + </simpara> + </note> + </refsect1> + </refentry> + + <refentry id="function.chown"> + <refnamediv> + <refname>chown</refname> + <refpurpose>Ändert den Eigentümer einer Datei</refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>int <function>chown</function></funcdef> + <paramdef>string <parameter>filename</parameter></paramdef> + <paramdef>mixed <parameter>user</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + Ändert den Eigentümer der Datei <parameter>filename</parameter> + in Benutzer <parameter>user</parameter>. Nur der Superuser kann + den Eigentümer einer Datei ändern. + </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> + </refsect1> + </refentry> + + <refentry id="function.clearstatcache"> + <refnamediv> + <refname>clearstatcache</refname> + <refpurpose>Löscht den Status Cache</refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>void <function>clearstatcache</function></funcdef> + <void/> + </funcprototype> + </funcsynopsis> + <para> + <function>clearstatcache</function> löscht den Zwischenspeicher + mit den Dateistatuswerten. Die Systemaufrufe + <systemitem>stat</systemitem> oder <systemitem>lstat</systemitem> + sind auf den meisten Systemen sehr "teure" Aufrufe. Daher wird + das Ergebnis des letzten Aufrufs von einer der unten aufgeführten + Funktionen für die nächste Benutzung eines ähnlichen Aufrufs mit + dem gleichen Dateinamen gespeichert. Wenn Sie einen neuen + Status-Check erzwingen wollen, z.B. wenn die Datei in der + Zwischenzeit oftmals aufgerufen wurde, verändert oder + verschwunden ist, können Sie diese Funktion dazu benutzen, das + Ergebnis des letzten Aufrufes aus dem Speicher zu leeren. + </para> + <para> + Dieser Wert wird nur für die Zeit eines einzelnen Requests + zwischengespeichert. + </para> + <para> + Folgende Funktionen betreffen den Dateistatus: + <function>stat</function>, <function>lstat</function>, + <function>file_exists</function>, + <function>is_writeable</function>, + <function>is_readable</function>, + <function>is_executable</function>, <function>is_file</function>, + <function>is_dir</function>, <function>is_link</function>, + <function>filectime</function>, <function>fileatime</function>, + <function>filemtime</function>, <function>fileinode</function>, + <function>filegroup</function>, <function>fileowner</function>, + <function>filesize</function>, <function>filetype</function>, and + <function>fileperms</function>. + </para> + </refsect1> + </refentry> + + <refentry id="function.copy"> + <refnamediv> + <refname>copy</refname> + <refpurpose>Kopiert eine Datei</refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>int <function>copy</function></funcdef> + <paramdef>string <parameter>source</parameter></paramdef> + <paramdef>string <parameter>dest</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + Die Funktion <function>copy</function> kopiert eine Datei. Sie + gibt TRUE zurück, wenn der Kopiervorgang erfolgreich war, + andernfalls FALSE. + <example> + <title><function>Copy</function> Beispiel</title> + <programlisting role="php"> +if (!copy ($file, $file.'.bak')) { + print ("failed to copy $file...<br>\n"); +} + </programlisting> + </example> + </para> + <para> + Siehe auch: <function>rename</function>. + </para> + </refsect1> + </refentry> + + <refentry id="function.delete"> + <refnamediv> + <refname>delete</refname> + <refpurpose>"Dummy Handbuch Eintrag"</refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>void <function>delete</function></funcdef> + <paramdef>string <parameter>file</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + Dieses ist ein "Dummy Handbuch Eintrag" für diejenigen, die nach + einer Funktion wie <function>unlink</function> oder + <function>unset</function> an der falschen Stelle suchen. + </para> + <para> + Siehe auch <function>unlink</function> um Dateien zu löschen, + <function>unset</function> um Variablen zu löschen. + </para> + </refsect1> + </refentry> + + <refentry id="function.dirname"> + <refnamediv> + <refname>dirname</refname> + <refpurpose> + Extrahiert den Verzeichnis-Namen aus einer vollständigen + Pfadangabe + </refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>string <function>dirname</function></funcdef> + <paramdef>string <parameter>path</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + Bei einer vollständigen Pfadangabe gibt diese Funktion den + Verzeichnispfad zurück. + </para> + <para> + Unter Windows wird sowohl der Slash (<literal>/</literal>) als + auch der Backslash (<literal>\</literal>) als Trennzeichen bei + Pfadangaben benutzt. Unter anderen Betriebssystemen hingegen nur + der Slash (<literal>/</literal>). + </para> + <para> + <example> + <title><function>dirname</function> Beispiel</title> + <programlisting role="php"> +$path = "/etc/passwd"; +$file = dirname ($path); // $file enthält den Wert "/etc" + </programlisting> + </example> + </para> + <para> + Siehe auch <function>basename</function>. + </para> + </refsect1> + </refentry> + + <refentry id="function.diskfreespace"> + <refnamediv> + <refname>diskfreespace</refname> + <refpurpose> + Gibt den freien Speicherplatz in einem Verzeichnis zurück + </refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>float <function>diskfreespace</function></funcdef> + <paramdef>string <parameter>directory</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + Diese Funktion gibt den freien Speicherplatz eines Verzeichnisses + in Byte zurück. + </para> + <para> + <example> + <title><function>diskfreespace</function> Beispiel</title> + <programlisting role="php"> +$df = diskfreespace("/"); // $df hält die Anzahl an freien Bytes + // im Verzeichnis "/" + </programlisting> + </example> + </para> + </refsect1> + </refentry> + + <refentry id="function.fclose"> + <refnamediv> + <refname>fclose</refname> + <refpurpose>Schließt einen offenen Dateizeiger</refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>int <function>fclose</function></funcdef> + <paramdef>int <parameter>fp</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + Die Datei, auf die der Dateizeiger <parameter>fp</parameter> + zeigt wird geschlossen. + </para> + <para> + Gibt bei erfolgreichem Schließen der Datei TRUE, andernfalls + FALSE zurück. + </para> + <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. + </para> + </refsect1> + </refentry> + + <refentry id="function.feof"> + <refnamediv> + <refname>feof</refname> + <refpurpose> + Prüft, ob der Dateizeiger am Ende der Datei steht + </refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>int <function>feof</function></funcdef> + <paramdef>int <parameter>fp</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + Gibt TRUE zurück, falls der Dateizeiger am Ende der Datei steht + oder ein Fehler aufgetreten ist, andernfalls FALSE. + </para> + <para> + Der Dateizeiger muss gültig sein, d.h. die Datei, auf die gezeigt + wird, muss zuvor mit <function>fopen</function>, + <function>popen</function> oder <function>fsockopen</function> + geöffnet worden sein. + </para> + </refsect1> + </refentry> + + <refentry id="function.fflush"> + <refnamediv> + <refname>fflush</refname> + <refpurpose>Schreibt den Ausgabepuffer in eine Datei</refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>int <function>fflush</function></funcdef> + <paramdef>int <parameter>fp</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + Diese Funktion erzwingt das Schreiben des gesamten Ausgabepuffers + in die von dem Dateizeiger <parameter>fp</parameter> angegebenen + Datei. Gibt bei Erfolg TRUE, andernfalls FALSE zurück. + </para> + <para> + Der Dateizeiger muss gültig sein, und auf eine mittels + <function>fopen</function>, <function>popen</function>, oder + <function>fsockopen</function> erfolgreich geöffnete Datei zeigen. + </para> + </refsect1> + </refentry> + + <refentry id="function.fgetc"> + <refnamediv> + <refname>fgetc</refname> + <refpurpose> + Liest das Zeichen, auf welches der Dateizeiger zeigt + </refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>string <function>fgetc</function></funcdef> + <paramdef>int <parameter>fp</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + Gibt einen String zurück, der ein einzelnes Zeichen von der + aktuellen Position des Dateizeigers <parameter>fp</parameter> + enthält. Gibt FALSE zurück, wenn der Dateizeiger am Ende der + Datei steht (wie die Funktion <function>feof</function>). + </para> + <para> + Der Dateizeiger muss gültig sein, d.h. die Datei, auf die gezeigt + wird, muss zuvor mit <function>fopen</function>, + <function>popen</function> oder <function>fsockopen</function> + geöffnet worden sein. + </para> + <para> + Siehe auch <function>fread</function>, + <function>fopen</function>, <function>popen</function>, + <function>fsockopen</function> und <function>fgets</function>. + </para> + </refsect1> + </refentry> + + <refentry id="function.fgetcsv"> + <refnamediv> + <refname>fgetcsv</refname> + <refpurpose> + Liest eine Zeile von der Position des Dateizeigers und + überprüft diese auf Komma-Separierte-Werte (CSV) + </refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>array <function>fgetcsv</function></funcdef> + <paramdef>int <parameter>fp</parameter></paramdef> + <paramdef>int <parameter>length</parameter></paramdef> + <paramdef>string + <parameter> + <optional>Trennzeichen (Delimiter)</optional> + </parameter> + </paramdef> + </funcprototype> + </funcsynopsis> + <simpara> + Die Funktion <function>fgetcsv</function> handelt ähnlich der + Funktion <function>fgets</function>, bis auf den Umstand, das + <function>fgetcsv</function> die eingelesene Zeile auf + Kommaseparierte Felder hin überprüft. Das Ergebnis wird als Array + zurückgegeben. Als Trennzeichen (Delimiter) wird - wenn kein + anderes Trennzeichen im dritten optionalen Parameter angegeben + wird - das Komma benutzt. + </simpara> + <simpara> + Der Dateizeiger <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>fsockopen</function> geöffnet worden sein. + </simpara> + <simpara> + 'length' muss größer sein als die längste in der CSV-Datei + vorhandene Zeile (um das Erkennen von EndOfLine(Ende der Zeile) + Zeichen zu ermöglichen). + </simpara> + <simpara> + <function>fgetcsv</function> gibt FALSE am Dateiende und bei + Lesefehlern zurück. + </simpara> + <simpara> + Eine leere Zeile der CSV-Datei wird als Array mit einem Feld das + den Wert NULL hält zurückgegeben. Sie wird nicht als Fehler + behandelt. + </simpara> + <example> + <title> + <function>Fgetcsv</function> Beispiel - Lesen und Ausgabe des + Inhalts einer CSV-Datei + </title> + <programlisting role="php"> +$row = 1; // Anzahl der Arrays +$fp = fopen ("test.csv","r"); // Datei wird zum Lesen + // geöffnet +while ($data = fgetcsv ($fp, 1000, ",")) { // Daten werden aus der Datei + // in einen Array $data gelesen + $num = count ($data); // Felder im Array $data + // werden gezählt + print "<p> $num fields in line $row: <br>"; + $row++; // Anzahl der Arrays wird + // inkrementiert + for ($c=0; $c<$num; $c++) { // FOR-Schleife, um Felder + print $data[$c] . "<br>"; // des Arrays auszugeben + } +} +fclose ($fp); + </programlisting> + </example> + </refsect1> + </refentry> + + <refentry id="function.fgets"> + <refnamediv> + <refname>fgets</refname> + <refpurpose> + Liest eine Zeile von der Position des Dateizeigers + </refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>string <function>fgets</function></funcdef> + <paramdef>int <parameter>fp</parameter></paramdef> + <paramdef>int <parameter>length</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + Gibt eine Zeile bis zu <parameter>length</parameter> -1 Bytes + 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). + </para> + <para> + Wenn ein Fehler auftritt, wird FALSE zurückgegeben. + </para> + <para> + 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. + </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>fsockopen</function> geöffnet worden sein. + </simpara> + <para> + Ein einfaches Beispiel: + <example> + <title>Eine Datei Zeile für Zeile einlesen</title> + <programlisting role="php"> +$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>, + <function>popen</function>, <function>fgetc</function>, + <function>fsockopen</function>, und + <function>socket_set_timeout</function>. + </para> + </refsect1> + </refentry> + + <refentry id="function.fgetss"> + <refnamediv> + <refname>fgetss</refname> + <refpurpose> + Liest eine Zeile von der aktuellen Position des Dateizeigers + und entfernt HTML und PHP-Tags. + </refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>string <function>fgetss</function></funcdef> + <paramdef>int <parameter>fp</parameter></paramdef> + <paramdef>int <parameter>length</parameter></paramdef> + <paramdef>string + <parameter> + <optional>allowable_tags</optional> + </parameter> + </paramdef> + </funcprototype> + </funcsynopsis> + <para> + Diese Funktion ist identisch mit der Funktion + <function>fgets</function>, ausser das + <function>fgetss</function> versucht, vorhandene HTML und + PHP-Tags aus dem gelesenen Text zu entfernen. + </para> + <para> + Optional können mit dem dritten Parameter + <parameter>allowable_tags</parameter> Tags spezifiziert werden, + die nicht entfernt werden sollen. + <note> + <para> + <parameter>allowable_tags</parameter> wurden in PHP 3.0.13 + hinzugefügt, PHP4B3. + </para> + </note> + </para> + <para> + Siehe auch <function>fgets</function>, + <function>fopen</function>, <function>fsockopen</function>, + <function>popen</function> und <function>strip_tags</function>. + </para> + </refsect1> + </refentry> + + <refentry id="function.file"> + <refnamediv> + <refname>file</refname> + <refpurpose> + Liest eine Datei komplett in einen Array + </refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>array <function>file</function></funcdef> + <paramdef>string <parameter>filename</parameter></paramdef> + <paramdef>int + <parameter><optional>use_include_path</optional></parameter> + </paramdef> + </funcprototype> + </funcsynopsis> + <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> + <para> + Optional kann der zweite Parameter benutzt und auf '1' gesetzt + werden, wenn in dem <link + linkend="ini.include-path">include_path</link> ebenfalls nach der + Datei gesucht werden soll. + </para> + <para> + <informalexample> + <programlisting role="php"> +<?php +// liest eine Webseite in einen Array und gibt das Ergebnis aus +$fcontents = file ('http://www.php.net'); +while (list ($line_num, $line) = each ($fcontents)) { + echo "<b>Line $line_num:</b>" . htmlspecialchars($line) . "<br>\n"; +} + +// liefert eine Webseite in einen String +$fcontents = join ('', file ('http://www.php.net')); +?> + </programlisting> + </informalexample> + </para> + <para> + Siehe auch <function>readfile</function>, + <function>fopen</function>, <function>fsockopen</function>, und + <function>popen</function>. + </para> + </refsect1> + </refentry> + + <refentry id="function.file-exists"> + <refnamediv> + <refname>file_exists</refname> + <refpurpose>Überprüft, ob eine Datei existiert</refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>int <function>file_exists</function></funcdef> + <paramdef>string <parameter>filename</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <simpara> + Gibt TRUE zurück, wenn die mit <parameter>filename</parameter> + spezifizierte Datei existiert, andernfalls FALSE. + </simpara> + <simpara> + <function>File_exists</function> funktioniert nur mit lokalen + Dateien. Die Datei, deren Existenz überprüft werden soll muss + über das Dateisystem des Servers erreichbar sein. + </simpara> + <simpara> + Das Ergebnis dieses Funktionsaufrufes wird zwischengespeichert. + Siehe <function>clearstatcache</function> für weitere + Einzelheiten. + </simpara> + </refsect1> + </refentry> + + <refentry id="function.fileatime"> + <refnamediv> + <refname>fileatime</refname> + <refpurpose> + Gibt Datum und Uhrzeit des letzten Zugriffs auf eine Datei zurück + </refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>int <function>fileatime</function></funcdef> + <paramdef>string <parameter>filename</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <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. + </simpara> + <simpara> + Das Ergebnis dieses Funktionsaufrufes wird zwischengespeichert. + Siehe <function>clearstatcache</function> für weitere + Einzelheiten. + </simpara> + <simpara> + 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ässig auf eine grosse Anzahl Dateien oder Verzeichnisse zugreift. + Manche Unix Dateisysteme können mit deaktivierter atime-Aktualisierung + 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> + <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> + </refsect1> + </refentry> + + <refentry id="function.filectime"> + <refnamediv> + <refname>filectime</refname> + <refpurpose> + Gibt Datum und Uhrzeit der letzten Änderung des Dateizeigers + Inode zurück + </refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>int <function>filectime</function></funcdef> + <paramdef>string <parameter>filename</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + Gibt Zeit der letzten Änderung des Dateizeigers Inode zurück, + oder FALSE wenn ein Fehler auftrat. Die Zeit wird als + UNIX-Timestamp zurückgegeben. + </para> + <para> + Das Ergebnis dieses Funktionsaufrufes wird zwischengespeichert. + Siehe <function>clearstatcache</function> für weitere + Einzelheiten. + </para> + <para> + Anmerkung: Bei den meisten Unix Dateisystemen gilt eine Datei als + geändert, sobald ihre Inode-Daten geändert wurden; d.h. wenn die + Rechte, Eigentümer, Grupp, oder andere Metadaten des Inodes + aktualisiert werden. Siehe auch <function>filemtime</function> (das + ist was Sie suchen, wenn Sie Fusszeilen mit "Zuletzt Aktualisiert" + für Webseiten erstellen möchten) und <function>fileatime</function>. + </para> + <para>Beachten Sie auch, dass in einigen Unix-Texten ctime als die Zeit + der Erstellung der Datei beschrieben wird. Das ist falsch. Bei den + meisten Unix Dateisystemen gibt es keine Zeitangabe für die Erstellung + von Unix Dateien. + </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> + </refsect1> + </refentry> + + <refentry id="function.filegroup"> + <refnamediv> + <refname>filegroup</refname> + <refpurpose> + Gibt die Gruppenzugehörigkeit einer Datei zurück + </refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>int <function>filegroup</function></funcdef> + <paramdef>string <parameter>filename</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <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 + <function>posix_getgrgid</function> können Sie diese zu ihrem + Gruppennamen auflösen. + </para> + <para> + Das Ergebnis dieses Funktionsaufrufes wird zwischengespeichert. + Siehe <function>clearstatcache</function> für weitere + Einzelheiten. + </para> + <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. + </simpara> + </note> + </refsect1> + </refentry> + + <refentry id="function.fileinode"> + <refnamediv> + <refname>fileinode</refname> + <refpurpose>Gibt Inode-Nummer einer Datei aus</refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>int <function>fileinode</function></funcdef> + <paramdef>string <parameter>filename</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + Gibt die Inode-Nummer einer Datei zurück, oder FALSE wenn ein + Fehler auftrat. + </para> + <para> + Das Ergebnis dieses Funktionsaufrufes wird zwischengespeichert. + Siehe <function>clearstatcache</function> für weitere + Einzelheiten. + </para> + <note> + <simpara> + Diese Funktion hat unter Windows-Systemen keinen Effekt. + </simpara> + </note> + </refsect1> + </refentry> + + <refentry id="function.filemtime"> + <refnamediv> + <refname>filemtime</refname> + <refpurpose> + Gibt Datum und Uhrzeit der letzten Dateiänderung aus + </refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>int <function>filemtime</function></funcdef> + <paramdef>string <parameter>filename</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + Gibt Datum und Uhrzeit zurück, wann die Datei das letzte mal + modifiziert wurde, oder FALSE wenn ein Fehler auftrat. Das Datum + wird als UNIX-Timestamp zurückgegeben. + </para> + <para> + Das Ergebnis dieses Funktionsaufrufes wird zwischengespeichert. + Siehe <function>clearstatcache</function> für weitere + Einzelheiten. + </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> + <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>, + um das Ergebnis dieser Funktion in ein ausgabefähiges Änderungsdatum + für z.B. Fusszeilen in Webseiten zu erhalten. + </para> + </refsect1> + </refentry> + + <refentry id="function.fileowner"> + <refnamediv> + <refname>fileowner</refname> + <refpurpose>Gibt den Dateieigentümer aus</refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>int <function>fileowner</function></funcdef> + <paramdef>string <parameter>filename</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + Gibt die Benutzer ID des Eigentümers einer Datei zurück, oder + FALSE wenn ein Fehler auftrat. Die Benutzer ID wird in + numerischem Format zurückgegeben und kann mit der Funktion + <function>posix_getpwuid</function> zum Benutzernamen aufgelöst + werden. + </para> + <para> + Das Ergebnis dieses Funktionsaufrufes wird zwischengespeichert. + Siehe <function>clearstatcache</function> für weitere + Einzelheiten. + </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 unter Windows keinen Effekt. + </simpara> + </note> + </refsect1> + </refentry> + + <refentry id="function.fileperms"> + <refnamediv> + <refname>fileperms</refname> + <refpurpose>Gibt die Zugriffsrechte einer Datei aus</refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>int <function>fileperms</function></funcdef> + <paramdef>string <parameter>filename</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + Gibt die Zugriffsrechte einer Datei zurück, oder FALSE wenn ein + Fehler auftrat. + </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> + <para> + Das Ergebnis dieses Funktionsaufrufes wird zwischengespeichert. + Siehe <function>clearstatcache</function> für weitere + Einzelheiten. + </para> + </refsect1> + </refentry> + + <refentry id="function.filesize"> + <refnamediv> + <refname>filesize</refname> + <refpurpose>Gibt die Größe einer Datei aus</refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>int <function>filesize</function></funcdef> + <paramdef>string <parameter>filename</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + Gibt die Größe einer Datei zurück, oder FALSE wenn ein Fehler + auftrat. + </para> + <para> + Das Ergebnis dieses Funktionsaufrufes wird zwischengespeichert. + Siehe <function>clearstatcache</function> für weitere + Einzelheiten. + </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> + </refsect1> + </refentry> + + <refentry id="function.filetype"> + <refnamediv> + <refname>filetype</refname> + <refpurpose>Gibt den Typ einer Datei zurück</refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>string <function>filetype</function></funcdef> + <paramdef>string <parameter>filename</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + Gibt den Typ einer Datei zurück. Mögliche Werte sind fifo, char, + dir, block, link, file und unknown. + </para> + <para> + Gibt FALSE zurück, wenn ein Fehler auftrat. + </para> + <para> + Das Ergebnis dieses Funktionsaufrufes wird zwischengespeichert. + Siehe <function>clearstatcache</function> für weitere + Einzelheiten. + </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> + </refsect1> + </refentry> + + <refentry id="function.flock"> + <refnamediv> + <refname>flock</refname> + <refpurpose>Portables Datei-Verriegelungs-Verfahren</refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>bool <function>flock</function></funcdef> + <paramdef>int <parameter>fp</parameter></paramdef> + <paramdef>int <parameter>operation</parameter></paramdef> + <paramdef>int + <parameter> + <optional>wouldblock</optional> + </parameter> + </paramdef> + </funcprototype> + </funcsynopsis> + <simpara> + PHP liefert einen portablen Weg, Dateien in einer "beratenden" + Art und Weise zu verriegeln. D.h. alle zugreifende Programme + müssen die gleiche Art und Weise der Verriegelung benutzen, oder + es funktioniert nicht. + </simpara> + <simpara> + <function>flock</function> arbeitet mit <parameter>fp</parameter> + welcher ein existierender Dateizeiger sein muss. Der Parameter + <parameter>operation</parameter> bestimmt die Art der + Verriegelung und kann einen der folgenden Werte annehmen: + </simpara> + <para> + <itemizedlist> + <listitem> + <simpara> + Um eine verteilte, nur lesende Verriegelung zu erhalten, + 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. + 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. + 3 vor PHP 4.0.1). + </simpara> + </listitem> + <listitem> + <simpara> + Wenn Sie Zugriffe während der Verriegelung durch + <function>flock</function> erlauben wollen, fügen Sie LOCK_NB + (bzw. 4 vor PHP 4.0.1) zu <parameter>operation</parameter> hinzu. + </simpara> + </listitem> + </itemizedlist> + </para> + <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). + Das optionale dritte Argument ist auf TRUE gesetzt, wenn die + Verriegelung sperren sollte (EWOULDBLOCK errno Bedingung). + </simpara> + <simpara> + <function>flock</function> gibt TRUE bei Erfolg, FALSE wenn ein + Fehler auftrat (z.B. wenn eine Verriegelung nicht erstellt werden + konnte) zurück. + </simpara> + <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! + </para> + </warning> + </refsect1> + </refentry> + + <refentry id="function.fopen"> + <refnamediv> + <refname>fopen</refname> + <refpurpose>Öffnet eine Datei oder URL</refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>int <function>fopen</function></funcdef> + <paramdef>string <parameter>filename</parameter></paramdef> + <paramdef>string <parameter>mode</parameter></paramdef> + <paramdef>int + <parameter> + <optional>use_include_path</optional> + </parameter> + </paramdef> + </funcprototype> + </funcsynopsis> + <simpara> + Wenn <parameter>filename</parameter> mit "http://" (nicht case + sensitive) beginnt, wird zu dem spezifiziertem Server eine HTTP + 1.0 Connection geöffnet und ein Dateizeiger auf den Anfang des + Textes der Antwort zurückgegeben. Ein 'Host:' header wird mit der + Anfrage geschickt, um namens-basierte Virtual Hosts zu verarbeiten. + </simpara> + <simpara> + Weiterleitungen (HTTP Redirects) werden nicht unterstützt, die + Datei muss daher vollständig und mit abschließendem "/" + beschrieben werden. + </simpara> + <simpara> + Wenn <parameter>filename</parameter> mit "ftp://" (nicht case + sensitive) beginnt, wird eine ftp-Connection zu dem + spezifizierten Server geöffnet und ein Zeiger auf die + angeforderte Datei zurückgegeben. Wenn der Server keinen + passiven FTP-Modus unterstützt, wird diese Methode + fehlschlagen. Sie können Dateien entweder zum Schreiben oder zum + Lesen öffnen, jedoch nicht für beides gleichzeitig. + </simpara> + <simpara> + Wenn <parameter>filename</parameter> "php://stdin", + "php://stdout", oder "php://stderr" ist, wird der + korrespondierende stdio stream geöffnet (Feature wurde in Version + 3.0.13 eingeführt, in früheren Versionen muss der Dateiname wie + z.B. "/dev/stdin" oder "/dev/fd/0" benutzt werden, um auf die + stdio streams zuzugreifen). + </simpara> + <simpara> + Wenn <parameter>filename</parameter> mit irgendetwas anderem + beginnt, wird die Datei vom lokalen Dateisystem geöffnet und ein + Dateizeiger auf die geöffnete Datei zurückgegeben. + </simpara> + <simpara> + Wenn das Öffnen scheitert, gibt die Funktion FALSE zurück. + </simpara> + <para> + <parameter>mode</parameter> kann einen der folgenden Werte + einnehmen: + <itemizedlist> + <listitem> + <simpara> + 'r' - öffnet die Datei nur zum Lesen und positioniert den + Dateizeiger auf den Anfang der Datei. + </simpara> + </listitem> + <listitem> + <simpara> + 'r+' - Öffnet die Datei zum Lesen und Schreiben und setzt den + Dateizeiger auf den Anfang der Datei. + </simpara> + </listitem> + <listitem> + <simpara> + 'w' - Öffnet die Datei nur zum Schreiben und setzt den + Dateizeiger auf den Anfang der Datei sowie die Länge der Datei + auf 0 Byte. Wenn die Datei nicht existiert wird versucht sie + anzulegen. + </simpara> + </listitem> + <listitem> + <simpara> + 'w+' - Öffnet die Datei zum Lesen und Schreiben und setzt den + Dateizeiger auf den Anfang der Datei sowie die Länge der Datei + auf 0 Byte. Wenn die Datei nicht existiert, wird versucht sie + anzulegen. + </simpara> + </listitem> + <listitem> + <simpara> + 'a' - Öffnet die Datei nur zum Schreiben. Positioniert den + Dateizeiger auf das Ende der Datei. Wenn die Datei nicht + existiert, wird versucht sie anzulegen. + </simpara> + </listitem> + <listitem> + <simpara> + 'a+' - Öffnet die Datei zum Lesen und Schreiben. Positioniert + den Dateizeiger auf das Ende der Datei. Wenn die Datei nicht + existiert, wird versucht sie anzulegen. + </simpara> + </listitem> + </itemizedlist> + 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). + Wenn das Feature nicht gebraucht wird, wird es einfach ignoriert. + </para> + <para> + Sie können optional ein dritten Parameter benutzen und diesen auf + '1' setzten, wenn Sie auch im <link + linkend="ini.include-path">include_path</link> nach der Datei + suchen möchten. + </para> + <para> + <example> + <title>fopen() Beispiel</title> + <programlisting role="php"> +$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> + <simpara> + Wenn Sie Probleme mit dem Lesen oder Schreiben von Dateien haben + und PHP als Servermodul benutzen, stellen Sie zunächst + sicher, dass die Dateien und Verzeichnisse die Sie benutzen + wollen auch für den Server-Prozeß zugänglich sind + (Rechtevergabe). + </simpara> + <para> + Achten Sie auf Windows-Systemen darauf, dass Sie als + Verzeichnistrenner normale Schrägstriche '/' benutzen um + plattformunabhängig programmieren zu können. Sollten Sie dennoch + Backslashes verwenden, vergessen Sie nicht diese zu escapen '\\' + <informalexample> + <programlisting role="php"> +$fp = fopen ("c:\\data\\info.txt", "r"); + </programlisting> + </informalexample> + </para> + <simpara> + Siehe auch <function>fclose</function>, + <function>fsockopen</function>, + <function>socket_set_timeout</function>, und + <function>popen</function>. + </simpara> + </refsect1> + </refentry> + + <refentry id="function.fpassthru"> + <refnamediv> + <refname>fpassthru</refname> + <refpurpose> + Gibt alle verbleibenden Daten eines Dateizeigers direkt aus. + </refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>int <function>fpassthru</function></funcdef> + <paramdef>int <parameter>fp</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <simpara> + Die Funktion liest alle Daten vom Dateizeiger bis EOF aus und + gibt die Daten auf der Standartausgabe (Browser) aus. + </simpara> + <simpara> + Wenn ein Fehler auftritt, gibt <function>fpassthru</function> + FALSE zurück. + </simpara> + <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äßt nutzlosen + <parameter>fp</parameter>-Dateizeiger). + </simpara> + <simpara> + Wenn Sie den Inhalt einer Datei nur auf der Standartausgabe + (Browser) ausgeben wollen, sollten Sie besser + <function>readfile</function> benutzen, bei der Sie nicht zuvor + die Datei mittels <function>fopen</function> geöffnet haben + müssen. + </simpara> + <simpara> + Siehe auch <function>readfile</function>, + <function>fopen</function>, <function>popen</function> und + <function>fsockopen</function> + </simpara> + </refsect1> + </refentry> + + <refentry id="function.fputs"> + <refnamediv> + <refname>fputs</refname> + <refpurpose> + Schreibt Daten an die Position des Dateizeigers + </refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>int <function>fputs</function></funcdef> + <paramdef>int <parameter>fp</parameter></paramdef> + <paramdef>string <parameter>str</parameter></paramdef> + <paramdef>int + <parameter> + <optional>length</optional> + </parameter> + </paramdef> + </funcprototype> + </funcsynopsis> + <para> + <function>Fputs</function> ist ein Alias für die Funktion + <function>fwrite</function>, und ist in jeder Hinsicht identisch + mit ihr. Beachten Sie, dass der Parameter + <parameter>length</parameter> optional ist, und dass, wenn er + nicht benutzt wird, die gesamte Zeichenkette geschrieben wird. + </para> + </refsect1> + </refentry> + + <refentry id="function.fread"> + <refnamediv> + <refname>fread</refname> + <refpurpose>Liest Binärdaten aus einer Datei</refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>string <function>fread</function></funcdef> + <paramdef>int <parameter>fp</parameter></paramdef> + <paramdef>int <parameter>length</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <simpara> + <function>Fread</function> liest <parameter>length</parameter> + Bytes vom Dateizeiger, maximal jedoch bis zum Dateiende. + </simpara> + <para> + <informalexample> + <programlisting role="php"> +// 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, muß die Datei mit 'b' im <function>fopen</function> + Mode-Parameter geöffnet werden. + </para> + </note> + <para> + <informalexample> + <programlisting role="php"> +$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>, + <function>fsockopen</function>, <function>popen</function>, + <function>fgets</function>, <function>fgetss</function>, + <function>fscanf</function>, <function>file</function> und + <function>fpassthru</function>. + </simpara> + </refsect1> + </refentry> + + <refentry id="function.fscanf"> + <refnamediv> + <refname>fscanf</refname> + <refpurpose>Interpretiert den Input einer Datei entsprechend einem + angegebenen Format </refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>mixed <function>fscanf</function></funcdef> + <paramdef>int <parameter>handle</parameter></paramdef> + <paramdef>string <parameter>format</parameter></paramdef> + <paramdef>string + <parameter><optional>var1</optional></parameter>... + </paramdef> + </funcprototype> + </funcsynopsis> + <para> + Die Funktion <function>fscanf</function> ist + <function>sscanf</function> ähnlich, wobei sie ihren Input aus + der mit <parameter>handle</parameter> angegebenen Datei nimmt, und + 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 refenziert übergeben werden. + <example> + <title><function>Fscanf</function> Beispiel</title> + <programlisting role="php"> +$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> +javier argonaut pe +hiroshi sculptor jp +robert slacker us +luigi florist it + </programlisting> + </example> + </para> + <para> + Siehe auch <function>fread</function>, <function>fgets</function>, + <function>fgetss</function>, <function>sscanf</function>, + <function>printf</function>, und <function>sprintf</function>. + </para> + </refsect1> + </refentry> + + <refentry id="function.fseek"> + <refnamediv> + <refname>fseek</refname> + <refpurpose> + Positioniert den Dateizeiger um einen Offset 'offset' vor oder + zurück + </refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>int <function>fseek</function></funcdef> + <paramdef>int <parameter>fp</parameter></paramdef> + <paramdef>int <parameter>offset</parameter></paramdef> + <paramdef>int <parameter><optional>whence</optional></parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + Setzt den Dateizeiger einer mit <parameter>fp</parameter> angegebenen + Datei auf eine neue Position. Diese neue Position, angegeben in Bytes + vom Begin der Datei an, wird definiert durch Hinzufügen von + <parameter>offset</parameter> zu der Position spezifiziert durch + <parameter>whence</parameter>, deren Werte wie folgt definiert sind: + <simplelist> + <member>SEEK_SET - Setzt Position gleich + <parameter>offset</parameter> bytes.</member> + <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> + </simplelist> + </para> + <para>Wenn <parameter>whence</parameter> nicht angegeben wurde, wird + SEEK_SET angenommen. + </para> + <para> + Bei Erfolg wird '0' zurückgegeben, andernfalls '-1'. Beachten + Sie, dass die Überschreitung des Dateiendes (EOF) nicht als + Fehler bewertet wird. + </para> + <para> + Diese Funktion sollte nicht auf Dateizeiger angewandt werden, die + durch die Verwendung von "http://" oder "ftp://" bei der Funktion + <function>fopen</function> erhalten wurden. + </para> + <note> + <para> + Das <parameter>whence</parameter>-Argument wurde nach PHP 4.0 RC1 + eingeführt. + </para> + </note> + <para> + Siehe auch <function>ftell</function> und + <function>rewind</function>. + </para> + </refsect1> + </refentry> + + <refentry id="function.fstat"> + <refnamediv> + <refname>fstat</refname> + <refpurpose> + Übergibt Informationen über eine Datei mit offenem Dateizeiger + </refpurpose> + </refnamediv> + <refsect1> + <title>Description</title> + <funcsynopsis> + <funcprototype> + <funcdef>array <function>fstat</function></funcdef> + <paramdef>int <parameter>fp</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + Trägt die Statistiken der mittel des Dateizeigers fp geöffneten + Datei zusammen. Diese Funktion ist ähnlich der Funktion + <function>stat</function>, außer dass sie mit einem offenen + Dateizeiger anstatt eines Dateinamens arbeitet. + </para> + <para> + Gibt die Statistiken einer Datei in Form eines Arrays mit den + folgenden Elementen zurück: + <orderedlist> + <listitem><simpara>Gerät</simpara></listitem> + <listitem><simpara>Inode</simpara></listitem> + <listitem><simpara>Anzahl Links</simpara></listitem> + <listitem><simpara>User id des Eigentümers</simpara></listitem> + <listitem><simpara>Gruppen id Eigentümer</simpara></listitem> + <listitem><simpara>Gerätetype wenn ein Inode-Gerät *</simpara></listitem> + <listitem><simpara>Größe in Bytes</simpara></listitem> + <listitem><simpara>Zeit des letzten Zugriffs</simpara></listitem> + <listitem><simpara>Zeit der letzten Modifikation</simpara></listitem> + <listitem><simpara>Zeit der letzten Änderung</simpara></listitem> + <listitem><simpara>Blockgröße für Dateisystem I/O *</simpara></listitem> + <listitem><simpara>Anzahl der Blöcke</simpara></listitem> + </orderedlist> + * - nur gültig bei Systemen, welche den st_blksize Typ unterstützen, andere + Systeme (z.B. Windows) geben -1 zurück</para> + <para> + Das Ergebnis dieses Funktionsaufrufes wird zwischengespeichert. Siehe + <function>clearstatcache</function> für weitere Einzelheiten. + </para> + </refsect1> + </refentry> + + <refentry id="function.ftell"> + <refnamediv> + <refname>ftell</refname> + <refpurpose> + Ermittelt die aktuelle Position des Dateizeigers + </refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>int <function>ftell</function></funcdef> + <paramdef>int <parameter>fp</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + Gibt die aktuelle Position des Dateizeigers + <parameter>fp</parameter> zurück, z.B. seinen Offset im + Dateistream. + </para> + <para> + Wenn ein Fehler auftritt, wird FALSE zurückgegeben. + </para> + <para> + Der Dateizeiger muss gültig sein und auf eine erfolgreich durch + <function>fopen</function> oder <function>popen</function> + geöffnete Datei zeigen. + </para> + <para> + Siehe auch <function>fopen</function>, + <function>popen</function>, <function>fseek</function> und + <function>rewind</function>. + </para> + </refsect1> + </refentry> + + <refentry id="function.ftruncate"> + <refnamediv> + <refname>ftruncate</refname> + <refpurpose> + Kürzt eine Datei auf die angegebene Länge + </refpurpose> + </refnamediv> + <refsect1> + <title>Description</title> + <funcsynopsis> + <funcprototype> + <funcdef>int <function>ftruncate</function></funcdef> + <paramdef>int <parameter>fp</parameter></paramdef> + <paramdef>int <parameter>size</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + Nimmt den Dateizeiger <parameter>fp</parameter>, und verkürzt die + Datei auf die Länge <parameter>size</parameter>. + Diese Funktion gibt bei Erfolg TRUE, ansonsten FALSE zurück. + </para> + </refsect1> + </refentry> + + <refentry id="function.fwrite"> + <refnamediv> + <refname>fwrite</refname> + <refpurpose>Schreibt Binärdaten in eine Datei</refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>int <function>fwrite</function></funcdef> + <paramdef>int <parameter>fp</parameter></paramdef> + <paramdef>string <parameter>string</parameter></paramdef> + <paramdef>int + <parameter> + <optional>length</optional> + </parameter> + </paramdef> + </funcprototype> + </funcsynopsis> + <simpara> + <function>Fwrite</function> schreibt den Inhalt einer + Zeichenkette <parameter>string</parameter> in die Datei, auf + welche der <parameter>fp</parameter> Dateizeiger zeigt. Wenn der + <parameter>length</parameter> Parameter gegeben ist, wird das + Schreiben nach <parameter>length</parameter> Bytes beendet, oder + wenn das Dateiende (EOF) erreicht ist, je nachdem, was eher + eintritt. + </simpara> + <simpara> + Bedenken Sie, dass wenn der <parameter>length</parameter> + Parameter gesetzt ist, die <link + linkend="ini.magic-quotes-runtime">magic_quotes_runtime</link> + Konfigurations-Option ignoriert wird und somit keine Slashes mehr + von der Zeichenkette <parameter>string</parameter> entfernt + werden. + </simpara> + <note> + <para> + Auf Systemen, welche zwischen Binär- und Textdateien (z.B. Windows) + unterscheiden, muß die Datei mit 'b' im <function>fopen</function> + Mode-Parameter geöffnet werden. + </para> + </note> + <simpara> + Siehe auch <function>fread</function>, + <function>fopen</function>, <function>fsockopen</function>, + <function>popen</function> und <function>fputs</function>. + </simpara> + </refsect1> + </refentry> + + <refentry id="function.set-file-buffer"> + <refnamediv> + <refname>set_file_buffer</refname> + <refpurpose> + Setzt die Dateipufferung für einen gegebenen Dateizeiger + </refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>int <function>set_file_buffer</function></funcdef> + <paramdef>int <parameter>fp</parameter></paramdef> + <paramdef>int <parameter>buffer</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <simpara> + 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. + <function>set_file_buffer</function> setzt die Pufferung für + Schreiboperationen des gegebenen Dateizeigers + <parameter>fp</parameter> auf <parameter>buffer</parameter> + Bytes. Wenn <parameter>buffer</parameter> 0 ist, erfolgen die + Schreiboperationen ungepuffert. Dies stellt sicher, dass alle + Schreiboperationen mit <function>fwrite</function> abgeschlossen + werden, bevor andere Prozesse in diesen Output Stream schreiben können. + </simpara> + <simpara> + Die Funktion gibt bei Erfolg 0, oder EOF wenn die Anfrage nicht + erfolgreich war, zurück. + </simpara> + <para> + Das folgende Beispiel zeigt, wie man mittels + <function>set_file_buffer</function> einen ungepufferten Stream + generiert. + <example> + <title><function>set_file_buffer</function> Beispiel</title> + <programlisting role="php"> +$fp=fopen($file, "w"); +if($fp){ + set_file_buffer($fp, 0); + fputs($fp, $output); + fclose($fp); +} + </programlisting> + </example> + </para> + <simpara> + Siehe auch <function>fopen</function>, <function>fwrite</function>. + </simpara> + </refsect1> + </refentry> + + <refentry id="function.is-dir"> + <refnamediv> + <refname>is_dir</refname> + <refpurpose> + Ermittelt, ob der gegebene Dateiname ein Verzeichnis ist + </refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>bool <function>is_dir</function></funcdef> + <paramdef>string <parameter>filename</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + Gibt TRUE zurück, wenn der Dateiname existiert und es sich + hierbei um ein Verzeichnis handelt. + </para> + <para> + Das Ergebnis dieses Funktionsaufrufes wird zwischengespeichert. + Siehe auch <function>clearstatcache</function> für weitere + Einzelheiten. + </para> + <para> + Siehe auch <function>is_file</function> und + <function>is_link</function>. + </para> + </refsect1> + </refentry> + + <refentry id="function.is-executable"> + <refnamediv> + <refname>is_executable</refname> + <refpurpose> + Ermittelt, ob eine Datei ausführbar ist + </refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>bool <function>is_executable</function></funcdef> + <paramdef>string <parameter>filename</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + Gibt TRUE zurück, wenn die Datei existiert und ausführbar ist. + </para> + <para> + Das Ergebnis dieses Funktionsaufrufes wird zwischengespeichert. + Siehe auch <function>clearstatcache</function> für weitere + Einzelheiten. + </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> + <para> + Siehe auch <function>is_file</function> und + <function>is_link</function>. + </para> + </refsect1> + </refentry> + + <refentry id="function.is-file"> + <refnamediv> + <refname>is_file</refname> + <refpurpose> + Ermittelt, ob der Dateiname eine reguläre Datei ist + </refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>bool <function>is_file</function></funcdef> + <paramdef>string <parameter>filename</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + Gibt TRUE zurück, wenn die Datei existiert und eine reguläre + Datei ist. + </para> + <para> + Das Ergebnis dieses Funktionsaufrufes wird zwischengespeichert. + Siehe auch <function>clearstatcache</function> für weitere + Einzelheiten. + </para> + <para> + Siehe auch <function>is_dir</function> und + <function>is_link</function>. + </para> + </refsect1> + </refentry> + + <refentry id="function.is-link"> + <refnamediv> + <refname>is_link</refname> + <refpurpose> + Ermittelt, ob der Dateiname ein symbolischer Link ist + </refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>bool <function>is_link</function></funcdef> + <paramdef>string <parameter>filename</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + Gibt TRUE zurück, wenn der Dateiname existiert und es sich um + einen symbolischen Link handelt. + </para> + <para> + Das Ergebnis dieses Funktionsaufrufes wird zwischengespeichert. + Siehe auch <function>clearstatcache</function> für weitere + Einzelheiten. + </para> + <para> + Siehe auch <function>is_dir</function> und + <function>is_file</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> + </refsect1> + </refentry> + + <refentry id="function.is-readable"> + <refnamediv> + <refname>is_readable</refname> + <refpurpose> + Ermittelt ob eine Datei lesbar ist + </refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>bool <function>is_readable</function></funcdef> + <paramdef>string <parameter>filename</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + Gibt TRUE zurück wenn die Datei existiert und sie lesbar ist. + </para> + <para> + Bedenken Sie, dass PHP mit der Benutzer ID auf die Datei + zugreift, unter der der Webserver läuft (oftmals ist dieses + 'nobody'). Beschränkungen durch safe_mode werden nicht + berücksichtigt. + </para> + <para> + Das Ergebnis dieses Funktionsaufrufes wird zwischengespeichert. + Siehe auch <function>clearstatcache</function> für weitere + Einzelheiten. + </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> + <para> + Siehe auch <function>is_writable</function>. + </para> + </refsect1> + </refentry> + + <refentry id="function.is-writable"> + <refnamediv> + <refname>is_writable</refname> + <refpurpose> + Ermittelt, ob in eine Datei geschrieben werden kann + </refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>bool <function>is_writable</function></funcdef> + <paramdef>string <parameter>filename</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + Gibt TRUE zurück, wenn die Datei existiert und nicht + schreibgeschützt ist. Das Dateinamen-Argument + <parameter>filename</parameter> kann ein Verzeichnisname + sein. So können Sie überprüfen, ob in ein Verzeichnis + geschrieben werden kann. + </para> + <para> + Bedenken Sie, dass PHP mit der Benutzer ID auf die Datei + zugreift, unter der der Webserver läuft (oftmals ist dieses + 'nobody'). Beschränkungen durch safe_mode werden nicht + berücksichtigt. + </para> + <para> + Das Ergebnis dieses Funktionsaufrufes wird zwischengespeichert. + Siehe auch <function>clearstatcache</function> für weitere + Einzelheiten. + </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> + <para> + Siehe auch <function>is_readable</function>. + </para> + </refsect1> + </refentry> + + <refentry id="function.is-writeable"> + <refnamediv> + <refname>is_writeable</refname> + <refpurpose>Ermittelt, ob in eine Datei geschrieben werden kann</refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>bool <function>is_writeable</function></funcdef> + <paramdef>string <parameter>filename</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + Dies ist ein Alias für <function>is_writable</function> + </para> + </refsect1> + </refentry> + + <refentry id="function.is-uploaded-file"> + <refnamediv> + <refname>is_uploaded_file</refname> + <refpurpose>Ermittelt, ob die Datei mittels HTTP POST + upgeloaded wurde.</refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>bool <function>is_uploaded_file</function></funcdef> + <paramdef>string <parameter>filename</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <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, daß + kein böswilliger User versucht hat das Script zu überlisten, indem + er es Dateien bearbeiten lässt, die es gar nicht bearbeiten sollte. + Zum Beispiel <filename>/etc/passwd</filename>. + </para> + <para> + Diese Prüfung ist speziell dort interessant, wo irgendeine Aktion mit + upgeloadeten Dateien deren Inhalt dem User zugänglich machen könnte + (oder auch anderen Usern auf dem selben System). + </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. + </para> + </refsect1> + </refentry> + + <refentry id="function.link"> + <refnamediv> + <refname>link</refname> + <refpurpose>Erzeugt einen absoluten Link</refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>int <function>link</function></funcdef> + <paramdef>string <parameter>target</parameter></paramdef> + <paramdef>string <parameter>link</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + <function>Link</function> erzeugt einen absoluten Link mit dem + Ziel <parameter>target</parameter>. + </para> + <para> + Siehe auch <function>symlink</function> um symbolische Links zu + erstellen und <function>readlink</function> zusammen mit + <function>linkinfo</function>. + </para> + <note> + <simpara> + Diese Funktion hat unter Windows-Systemen keinen Effekt. + </simpara> + </note> + </refsect1> + </refentry> + + <refentry id="function.linkinfo"> + <refnamediv> + <refname>linkinfo</refname> + <refpurpose>Ermittelt Informationen über einen Link</refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>int <function>linkinfo</function></funcdef> + <paramdef>string <parameter>path</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + <function>Linkinfo</function> gibt das st_dev Feld des UNIX C + stat structure resultierend aus dem lstat System Call + zurück. Diese Funktion wird benutzt, um zu verifizieren ob ein + Link (auf den mit <parameter>path</parameter> gezeigt wird) + wirklich exisitiert (Hierbei wird die gleiche Methode benutzt, + die in dem S_ISLNK Makro in stat.h definiert ist). Gibt 0 oder + FALSE zurück wenn ein Fehler auftrat. + </para> + <para> + Siehe auch <function>symlink</function>, + <function>link</function>, und <function>readlink</function>. + </para> + <note> + <simpara> + Diese Funktion hat unter Windows keinen Effekt. + </simpara> + </note> + </refsect1> + </refentry> + + <refentry id="function.mkdir"> + <refnamediv> + <refname>mkdir</refname> + <refpurpose>Erstellt ein Verzeichnis</refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>int <function>mkdir</function></funcdef> + <paramdef>string <parameter>pathname</parameter></paramdef> + <paramdef>int <parameter>mode</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + Versucht ein Verzeichnis mit dem spezifiziertem Namen zu + erstellen. + </para> + <para> + Bedenken Sie, dass sie wahrscheinlich den Mode als oktalen + Wert spezifizieren wollen, was bedeutet, dass er eine + voranstehende Null haben sollte. + <informalexample> + <programlisting role="php"> +mkdir ("/path/to/my/dir", 0700); + </programlisting> + </informalexample> + </para> + <para> + Gibt TRUE bei Erfolg, andernfalls FALSE zurück. + </para> + <para> + Siehe auch <function>rmdir</function>. + </para> + </refsect1> + </refentry> + + <refentry id="function.move-uploaded-file"> + <refnamediv> + <refname>move_uploaded_file</refname> + <refpurpose>Verschiebt eine upgeloadete Datei an einen neuen Ort. + </refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>bool <function>move_uploaded_file</function></funcdef> + <paramdef>string <parameter>filename</parameter></paramdef> + <paramdef>string <parameter>destination</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <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. + </para> + + <para> + Wenn <parameter>filename</parameter> keine gültige Datei ist, wird + keine Aktion ausgeführt, und + <function>move_uploaded_file</function> gibt + <literal>false</literal> 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> + gibt <literal>false</literal> zurück. Zusätzlich wird eine Warnung + ausgegeben. + </para> + + <para> + Diese Prüfung ist speziell dort interessant, wo irgendeine Aktion mit + upgeloadeten Dateien deren Inhalt dem User zugänglich machen könnte + (oder auch anderen Usern auf dem selben System). + </para> + + <para> + Siehe auch <function>is_uploaded_file</function>, und das Kapitel + <link linkend="features.file-upload">Steuerung von Dateiuploads</link> + für ein einfaches Anwendungsbeispiel. + </para> + </refsect1> + </refentry> + + + <refentry id="function.pathinfo"> + <refnamediv> + <refname>pathinfo</refname> + <refpurpose>Gibt Informationen über den Dateipfad</refpurpose> + </refnamediv> + <refsect1> + <title>Description</title> + <funcsynopsis> + <funcprototype> + <funcdef>array <function>pathinfo</function></funcdef> + <paramdef>string <parameter>path</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + <function>pathinfo</function> gibt ein assoziatives Array + mit Informationen über den Pfad <parameter>path</parameter> + zurück. Die folgenden Arrayelemente werden zurückgegeben: + den Verzeichnisnamen <parameter>dirname</parameter>, den Dateinamen + <parameter>basename</parameter>, und die Dateinamenserweiterung + <parameter>extension</parameter>. + </para> + <para> + <example> + <title><function>pathinfo</function> Beispiel</title> + <programlisting role="php"> +<?php + +$path_parts = pathinfo("/www/htdocs/index.html"); + +echo $path_parts["dirname"] . "\n"; +echo $path_parts["basename"] . "\n"; +echo $path_parts["extension"] . "\n"; + +?> + </programlisting> + </example> + </para> + <para> + Würde ausgeben: + <informalexample> + <programlisting> +/www/htdocs +index.html +html + </programlisting> + </informalexample> + </para> + <para> + Siehe auch <function>dirname</function>, + <function>basename</function> und <function>realpath</function>. + </para> + </refsect1> + </refentry> + + <refentry id="function.pclose"> + <refnamediv> + <refname>pclose</refname> + <refpurpose>Schließt einen Prozess-Dateizeiger</refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>int <function>pclose</function></funcdef> + <paramdef>int <parameter>fp</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + Schließt einen Prozess-Dateizeiger, der durch einen Aufruf von + <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. + </para> + <para> + Gibt den End-Status eines laufenden Prozesses zurück. + </para> + <para> + Siehe auch <function>popen</function>. + </para> + </refsect1> + </refentry> + + <refentry id="function.popen"> + <refnamediv> + <refname>popen</refname> + <refpurpose>Öffnet einen Prozesszeiger</refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>int <function>popen</function></funcdef> + <paramdef>string <parameter>command</parameter></paramdef> + <paramdef>string <parameter>mode</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + Öffnet eine Verbindung zu einem Prozess, der durch die Anweisung + <parameter>command</parameter> ausgeführt wurde. + </para> + <para> + Gibt einen Dateizeiger zurück, der identisch ist mit dem, der bei + der Funktion <function>fopen</function> zurückgegeben wird, + ausser dass dieser nur in eine Richtung funktioniert (entweder + lesend oder schreibend) und mit der Funktion + <function>pclose</function> geschlossen werden muss. Dieser + Zeiger kann mit den Funktionen <function>fgets</function>, + <function>fgetss</function> und <function>fputs</function> + benutzt werden. + </para> + <para> + Wenn ein Fehler auftritt, gibt diese Funktion FALSE zurück. + </para> + <para> + <informalexample> + <programlisting role="php"> +$fp = popen ("/bin/ls", "r"); + </programlisting> + </informalexample> + </para> + <para> + Siehe auch <function>pclose</function>. + </para> + </refsect1> + </refentry> + + <refentry id="function.readfile"> + <refnamediv> + <refname>readfile</refname> + <refpurpose>Gibt eine Datei aus</refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>int <function>readfile</function></funcdef> + <paramdef>string <parameter>filename</parameter></paramdef> + <paramdef>int + <parameter> + <optional>use_include_path</optional> + </parameter> + </paramdef> + </funcprototype> + </funcsynopsis> + <para> + Liest den Inhalt einer Datei und gibt ihn an der Standartausgabe + (Browser) aus. + </para> + <para> + Gibt die Anzahl der Bytes einer Datei zurück. Wenn ein Fehler + auftritt wird FALSE zurückgegeben und eine Fehlermeldung wird auf + der Standartausgabe ausgegeben. Die Ausgabe einer Fehlermeldung + kann durch Voranstellen eines '@' verhindert werden (@readfile). + </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 + die Standartausgabe geschrieben. + </para> + <para> + Weiterleitungen (HTTP Redirects) werden nicht unterstützt, daher + muss die Datei vollständig mit abschliessendem '/' geschrieben + werden. + </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 + auf der Standartausgabe ausgegeben. Wenn der Server keinen + passiven Mode unterstützt, wird diese Funktion fehlschlagen. + </para> + <para> + Wenn <parameter>filename</parameter> mit keinem dieser + Zeichenketten beginnt, wird die Datei vom lokalen Dateisystem + geöffnet und ihr Inhalt auf der Standartausgabe ausgegeben. + </para> + <para> + Sie können optional den zweiten Paratmeter benutzen und diesen + auf '1' setzen, wenn Sie auch im <link + linkend="ini.include-path"> include_path</link> nach der Datei + suchen möchten. + </para> + <para> + Siehe auch <function>fpassthru</function>, + <function>file</function>, <function>fopen</function>, + <function>include</function>, <function>require</function> und + <function>virtual</function>. + </para> + </refsect1> + </refentry> + + <refentry id="function.readlink"> + <refnamediv> + <refname>readlink</refname> + <refpurpose> + Gibt das Ziel eines symbolischen Links zurück + </refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>string <function>readlink</function></funcdef> + <paramdef>string <parameter>path</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + <function>Readlink</function> ist von der Funktionalität her + identisch mit der 'readlink C Funktion' und gibt den Inhalt des + Pfades des symbolischen Links zurück oder 0, wenn der Aufruf + fehlschlug. + </para> + <para> + Siehe auch <function>symlink</function>, + <function>readlink</function> und <function>linkinfo</function>. + </para> + <note> + <simpara> + Diese Funktion hat unter Windows keinen Effekt. + </simpara> + </note> + </refsect1> + </refentry> + + <refentry id="function.rename"> + <refnamediv> + <refname>rename</refname> + <refpurpose>Benennt eine Datei um</refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>int <function>rename</function></funcdef> + <paramdef>string <parameter>oldname</parameter></paramdef> + <paramdef>string <parameter>newname</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + Versucht eine Datei <parameter>oldname</parameter> in + <parameter>newname</parameter> umzubenennen. + </para> + <para> + Gibt TRUE bei Erfolg, andernfalls FALSE zurück. + </para> + </refsect1> + </refentry> + + <refentry id="function.rewind"> + <refnamediv> + <refname>rewind</refname> + <refpurpose> + Setzt den Dateizeiger auf das erste Byte der Datei + </refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>int <function>rewind</function></funcdef> + <paramdef>int <parameter>fp</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + Setzt den Dateizeiger (Datei-Positions-Indikator) für + <parameter>fp</parameter> an den Anfang des Dateistreams. + </para> + <para> + Wenn ein Fehler auftritt, gibt die Funktion 0 zurück. + </para> + <para> + Der Dateizeiger muss gültig sein und auf eine Datei zeigen, die + zuvor erfolgreich durch <function>fopen</function> geöffnet + wurde. + </para> + <para> + Siehe auch <function>fseek</function> und + <function>ftell</function>. + </para> + </refsect1> + </refentry> + + <refentry id="function.rmdir"> + <refnamediv> + <refname>rmdir</refname> + <refpurpose>Löscht ein Verzeichnis</refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>int <function>rmdir</function></funcdef> + <paramdef>string <parameter>dirname</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <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> + Wenn ein Fehler auftritt wird 0 zurückgegeben. + </para> + <para> + Siehe auch <function>mkdir</function>. + </para> + </refsect1> + </refentry> + + <refentry id="function.stat"> + <refnamediv> + <refname>stat</refname> + <refpurpose> + Ermittelt diverse Informationen über eine Datei + </refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>array <function>stat</function></funcdef> + <paramdef>string <parameter>filename</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + Versucht Informationen über eine Datei spezifiziert in + <parameter>filename</parameter> auszugeben. + </para> + <para> + Gibt einen Array mit folgenden statistischen Informationen als + Array- Elemente zurück: + <orderedlist> + <listitem> + <simpara>Laufwerk</simpara> + </listitem> + <listitem> + <simpara>inode</simpara> + </listitem> + <listitem> + <simpara>inode protection mode</simpara> + </listitem> + <listitem> + <simpara>Anzahl der Links</simpara> + </listitem> + <listitem> + <simpara>Benutzer ID des Inhabers</simpara> + </listitem> + <listitem> + <simpara>Gruppen ID des Inhabers</simpara> + </listitem> + <listitem> + <simpara>Laufwerkstyp wenn Inode-Laufwerk *</simpara> + </listitem> + <listitem> + <simpara>Größe in Bytes</simpara> + </listitem> + <listitem> + <simpara>Zeitpunkt des letzten Zugriffs</simpara> + </listitem> + <listitem> + <simpara>Zeitpunkt der letzten Modifizierung</simpara> + </listitem> + <listitem> + <simpara>Zeitpunkt der letzten Änderung</simpara> + </listitem> + <listitem> + <simpara>Blockgröße für das Dateisystem I/O *</simpara> + </listitem> + <listitem> + <simpara>Anzahl der zugewiesenen Blöcke</simpara> + </listitem> + </orderedlist> + * - nur gültig auf Systemen, die st_blksize unterstützen. Andere + Systeme (z.B. Windows) geben '-1' zurück. + </para> + <para> + Das Ergebnis dieses Funktionsaufrufes wird zwischengespeichert. + Siehe auch <function>clearstatcache</function> für weitere + Einzelheiten. + </para> + </refsect1> + </refentry> + + <refentry id="function.lstat"> + <refnamediv> + <refname>lstat</refname> + <refpurpose> + Gibt Informationen über eine Datei oder einen symbolischen Link. + </refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>array <function>lstat</function></funcdef> + <paramdef>string <parameter>filename</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + Ermittelt statistische Informationen über eine Datei oder + symbolischen Link, spezifiziert in <parameter>filename</parameter>. + Diese Funktion ist identisch mit der Funktion + <function>stat</function>, ausser dass wenn der Parameter + <parameter>filename</parameter> ein symbolischer Link ist, dessen + Status zurückgegeben wird und nicht der Status der Datei, auf die + der symbolische Link zeigt. + </para> + <para> + Gibt einen Array mit statistischen Informationen über die Datei + als Array-Elemente zurück: + <orderedlist> + <listitem> + <simpara>Laufwerk</simpara> + </listitem> + <listitem> + <simpara>inode</simpara> + </listitem> + <listitem> + <simpara>Anzahl der Links</simpara> + </listitem> + <listitem> + <simpara>Benutzer ID des Inhabers</simpara> + </listitem> + <listitem> + <simpara>Gruppen ID des Inhabers</simpara> + </listitem> + <listitem> + <simpara>Laufwerkstyp wenn inode Laufwerk *</simpara> + </listitem> + <listitem> + <simpara>Größe in Bytes</simpara> + </listitem> + <listitem> + <simpara>Zeitpunkt des letzten Zugriffs</simpara> + </listitem> + <listitem> + <simpara>Zeitpunkt der letzten Modifikation</simpara> + </listitem> + <listitem> + <simpara>Zeitpunkt der letzen Änderung</simpara> + </listitem> + <listitem> + <simpara>Blockgröße für das Dateisystem I/O *</simpara> + </listitem> + <listitem> + <simpara>Anzahl der zugewiesenen Blöcke</simpara> + </listitem> + </orderedlist> + * - nur gültig auf Systemen, die st_blksize unterstützen. Andere + Systeme (z.B. Windows) geben '-1' zurück. + </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> + <refpurpose>Erzeugt einen kanonisch absoluten Pfadnamen</refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>string <function>realpath</function></funcdef> + <paramdef>string <parameter>path</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + <function>realpath</function> expandiert alle symbolischen Links, und + 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 '/../'. + </para> + + <para> + <example> + <title><function>realpath</function> Beispiel</title> + <programlisting role="php"> +$real_path = realpath("../../index.php"); + </programlisting> + </example> + </para> + </refsect1> + </refentry> + + <refentry id="function.symlink"> + <refnamediv> + <refname>symlink</refname> + <refpurpose>Erzeugt einen symbolischen Link</refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>int <function>symlink</function></funcdef> + <paramdef>string <parameter>target</parameter></paramdef> + <paramdef>string <parameter>link</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + <function>Symlink</function> erzeugt einen symbolischen Link von + dem gegebenen Parameter <parameter>target</parameter> mit dem + spezifiziertem Namen <parameter>link</parameter>. + </para> + <para> + Siehe auch <function>link</function> um absolute Links zu + erstellen, und <function>readlink</function> zusammmen mit + <function>linkinfo</function>. + </para> + <note> + <simpara> + Diese Funktion hat unter Windows-Systemen keinen Effekt. + </simpara> + </note> + </refsect1> + </refentry> + + <refentry id="function.tempnam"> + <refnamediv> + <refname>tempnam</refname> + <refpurpose>Erzeugt einen eindeutigen Dateinamen</refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>string <function>tempnam</function></funcdef> + <paramdef>string <parameter>dir</parameter></paramdef> + <paramdef>string <parameter>prefix</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + Erzeugt einen eindeutigen temporären Dateinamen in dem + spezifizierten Verzeichnis. Wenn das Verzeichnis nicht existiert, + wird <function>tempnam</function> einen Dateinamen im temporären + Verzeichnis des Systems erstellen. + </para> + <para> + Das Verhalten von <function>tempnam</function> ist + systemabhängig. Unter Windows wird die TMP-Umgebungsvariable den + <parameter>dir</parameter> Parameter überschreiben, unter + Linux-Systemen hat die TMPDIR Umgebungsvariable Vorrang, während + SVR4 immer den spezifizierten Verzeichnisnamen benutzen wird, + wenn dieses existiert. Wenn Sie nicht genau wissen, wie Ihr + System <function>tempnam</function> behandelt, dann konsultieren + Sie bitte Ihre System-Dokumentation. + </para> + <para> + Gibt den neuen temporären Dateinamen bei Erfolg, oder eine + NULL-Zeichenkette wenn ein Fehler auftritt zurück. + <example> + <title><function>Tempnam</function> Beispiel</title> + <programlisting role="php"> +$tmpfname = tempnam ("/tmp", "FOO"); + </programlisting> + </example> + </para> + <note> + <simpara> + 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. + </simpara> + </note> + <para> + Siehe auch <function>tmpfile</function>. + </para> + </refsect1> + </refentry> + + <refentry id="function.tmpfile"> + <refnamediv> + <refname>tmpfile</refname> + <refpurpose>Legt eine temporäre Datei an</refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>int <function>tmpfile</function></funcdef> + <paramdef>void</paramdef> + </funcprototype> + </funcsynopsis> + <para> + Erstellt eine temporäre Datei mit einem eindeutigen + Dateinamen im Schreibmodus und gibt einen Dateizeiger + ähnlich wie es bei der Funktion <function>fopen</function> + erfolgt, zurück. Die Datei wird automatisch gelöscht, wenn + sie geschlossen wird (mit <function>fclose</function>), oder + das Skript beendet wird. + </para> + <para> + Für Details konsultieren Sie bitte die Dokumentation Ihres + Betriebssystems bzgl. der <literal>tmpfile(3)</literal> Funktion, + wie auch die <filename>stdio.h</filename> Header-Datei. + </para> + <para> + Siehe auch <function>tempnam</function>. + </para> + </refsect1> + </refentry> + + <refentry id="function.touch"> + <refnamediv> + <refname>touch</refname> + <refpurpose> + Setzt das Datum der letzten Änderung einer Datei + </refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>int <function>touch</function></funcdef> + <paramdef>string <parameter>filename</parameter></paramdef> + <paramdef>int + <parameter> + <optional>time</optional> + </parameter> + </paramdef> + </funcprototype> + </funcsynopsis> + <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. + </para> + <para> + Wenn die Datei nicht existiert, wird sie erzeugt. + </para> + <para> + Gibt TRUE bei Erfolg, andernfalls FALSE zurück. + <example> + <title><function>Touch</function> Beispiel</title> + <programlisting role="php"> +if (touch ($DateiName)) { + print "$DateiName Modifizierungs-Zeit wurde auf das aktuelle + Datum und und die aktuelle Uhrzeit gesetzt."; +} else { + print "Tut mir leid, Modifikations-Zeit von $DateiName konnte + nicht geändert werden."; +} + </programlisting> + </example> + </para> + </refsect1> + </refentry> + + <refentry id="function.umask"> + <refnamediv> + <refname>umask</refname> + <refpurpose> + Ändert die aktuelle umask (Zugriffsrechte) + </refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>int <function>umask</function></funcdef> + <paramdef>int <parameter>mask</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + <function>Umask</function> setzt PHP's umask auf + <parameter>mask</parameter> & 0777 und gibt die alte umask + zurück. Wenn PHP als Servermodul benutzt wird, wird die umask + zurückgespeichert wenn die jeweilige Anfrage beendet ist. + </para> + <para> + <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> + </refsect1> + </refentry> + + <refentry id="function.unlink"> + <refnamediv> + <refname>unlink</refname> + <refpurpose>Löscht eine Datei</refpurpose> + </refnamediv> + <refsect1> + <title>Beschreibung</title> + <funcsynopsis> + <funcprototype> + <funcdef>int <function>unlink</function></funcdef> + <paramdef>string <parameter>filename</parameter></paramdef> + </funcprototype> + </funcsynopsis> + <para> + Löscht <parameter>filename</parameter>. Ähnlich der UNIX C + unlink() Funktion. + </para> + <para> + Gibt 0 oder FALSE zurück, wenn ein Fehler auftritt. + </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> + +<!-- 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 +sgml-parent-document:nil +sgml-default-dtd-file:"../../manual.ced" +sgml-exposed-tags:nil +sgml-local-catalogs:nil +sgml-local-ecat-files:nil +End: +--> +