Funktionen is_uploaded_file
Funktionen is_uploaded_file kontrollerer, om den angivne fil
blev uploadet via en POST-forespørgsel. Dette er en vigtig sikkerhedskontrol
når man arbejder med uploadede filer. Funktionen tager en parameter -
stien til den fil, der skal kontrolleres, og returnerer true, hvis filen
blev uploadet via POST, og false i modsat fald.
Syntaks
is_uploaded_file(string $filename): bool
Eksempel
Lad os kontrollere, om en fil blev uploadet via en formular:
<?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';
}
?>
Eksempel
Brug af funktionen i kombination med move_uploaded_file:
<?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';
}
?>
Se også
-
funktionen
move_uploaded_file,
som sikkert flytter en uploadet fil -
funktionen
file_exists,
som kontrollerer eksistensen af en fil (men ikke kun uploadede) -
funktionen
tmpfile,
som opretter en midlertidig fil -
funktionen
is_file,
som kontrollerer en fil