Funktion is_uploaded_file

Die Funktion is_uploaded_file prüft, ob die angegebene Datei über eine POST-Anfrage hochgeladen wurde. Dies ist eine wichtige Sicherheitsüberprüfung bei der Arbeit mit hochladbaren Dateien. Die Funktion akzeptiert einen Parameter - den Pfad zur zu prüfenden Datei, und gibt true zurück, wenn die Datei via POST hochgeladen wurde, andernfalls false.

Syntax

phpis_uploaded_file(string $filename): bool

Beispiel

Prüfen wir, ob eine Datei über das Formular hochgeladen wurde:

php<?php
  if (is_uploaded_file($_FILES['userfile']['tmp_name'])) {
    echo 'File was uploaded via HTTP POST';
  } else {
    echo 'File was NOT uploaded via HTTP POST';
  }
?>

Beispiel

Verwendung der Funktion in Kombination mit move_uploaded_file:

php<?php
  $temp_file = $_FILES['userfile']['tmp_name'];
  $target_file = 'uploads/' . $_FILES['userfile']['name'];
  
  if (is_uploaded_file($temp_file)) {
    move_uploaded_file($temp_file, $target_file);
    echo 'file uploaded successfully';
  } else {
    echo 'possible file upload attack';
  }
?>

Siehe auch

  • die Funktion move_uploaded_file,
    die eine hochgeladene Datei sicher verschiebt
  • die Funktion file_exists,
    die die Existenz einer Datei prüft (aber nicht nur hochgeladener)
  • die Funktion tmpfile,
    die eine temporäre Datei erstellt
  • die Funktion is_file,
    die eine Datei prüft