Funcția is_uploaded_file

Funcția is_uploaded_file verifică dacă fișierul specificat a fost încărcat printr-o cerere POST. Aceasta este o verificare importantă de securitate atunci când lucrați cu fișiere încărcate. Funcția acceptă un singur parametru - calea către fișierul de verificat și returnează true, dacă fișierul a fost încărcat prin POST și false în caz contrar.

Sintaxă

phpis_uploaded_file(string $filename): bool

Exemplu

Să verificăm dacă un fișier a fost încărcat prin formular:

php<?php
  if (is_uploaded_file($_FILES['userfile']['tmp_name'])) {
    echo 'Fișierul a fost încărcat via HTTP POST';
  } else {
    echo 'Fișierul NU a fost încărcat via HTTP POST';
  }
?>

Exemplu

Utilizarea funcției în combinație cu 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 'fișier încărcat cu succes';
  } else {
    echo 'posibil atac de încărcare a fișierului';
  }
?>

Vedeți și

  • funcția move_uploaded_file,
    care mută în siguranță un fișier încărcat
  • funcția file_exists,
    care verifică existența unui fișier (dar nu doar a celor încărcate)
  • funcția tmpfile,
    care creează un fișier temporar
  • funcția is_file,
    care verifică un fișier