Verschieben & mehr

Schauen wir uns zunächst die einfachsten Funktionen an. Da sich jeder mit HTML auskennt, ist die Verwendung von Pfadangaben und Dateinamen bereits bekannt.

relative Pfade:
- ausgehend vom Standort des Programms
- Bsp: "uploads/dateiname.txt"

absolute Pfade:
- vom /root aus gesehen
- Bsp: "c:/xampp/htdocs/projectx/uploads/dateiname.txt"

Verschieben

Für das Verschieben einer Datei von dem Einen in ein anderes Verzeichnis, möchte ich zwei Funktionen vorstellen.

move_uploaded_file ( string DATEI, string ZIEL)

Diese Funktion wird ganz speziell für Dateien verwendet, welche von einem Besucher hochgeladen wurden. Diese landen nämlich zuerst in einem temporären Bereich auf dem Server. Liegt die dort zu lange rum, wird sie automatisch gelöscht. Diese Funktion verschiebt aber nicht nur eine Datei, sondern sie prüft auch, ob es sich tatsächlich um eine hochgeladene Datei handelt. Wenn nicht, dann tut sie garnichts und gibt "false" zurück.

<?PHP

   
//  Pfad  und  Name  wo  die  Datei  zur  Zeit  liegt.
    //  Angenommen  im  Formular  stand:
    //  <input  type="file"  name="uploadfile"  ....
   
$aktuell  $_FILES['uploadfile']['tmp_name'];

   
//  Der  zukünftige  Pfad  und  Name
   
$ziel  'upload/neueDatei.txt';

   
$status  move_uploaded_file  $aktuell$ziel  );

    if  (
$status)  {
          echo 
'Datei  wurde  erfolgreich  verschoben.';
    }  else  {
          echo 
'Fehler:  Datei  wurde  nicht  verschoben.';
    }

?>

move( string DATEI, string ZIEL)

Tut das Gleiche wie "move_uploaded_file()", allerdings ist ihr egal, ob es sich um eine hochgeladene Datei handelt oder nicht.

Weitere

Alle Funktionen (außer filesize) geben "true" zurück, wenn alles geklappt hat, ansonsten "false".

Kopieren
Das kopieren funktioniert genauso wie das verschieben, nur mit dem Unterschied, dass die Datei am Ursprungsort erhalten bleibt. Die benötigte Funktion lautet:
copy( string DATEI, string ZIEL)

Umbenennen
rename( string DATEI, string NAME)

Löschen
unlink( string DATEI)

Existenz prüfen
file_exists( string DATEI)

Datei prüfen
Ob es tatsächlich eine Datei ist (kein Link, oder Verzeichnis)
is_file( string DATEI)

Dateigröße
filesize( string DATEI)