Funksjonen is_uploaded_file
Funksjonen is_uploaded_file sjekker om den angitte filen
ble lastet opp via POST-forespørsel. Dette er en viktig sikkerhetssjekk
ved arbeid med opplastede filer. Funksjonen tar en parameter -
banen til filen som skal sjekkes, og returnerer true hvis filen
ble lastet opp via POST, og false i motsatt tilfelle.
Syntaks
is_uploaded_file(string $filename): bool
Eksempel
La oss sjekke om en fil ble lastet opp via et skjema:
<?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
Bruk av funksjonen i kombinasjon 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å
-
funksjonen
move_uploaded_file,
som flytter en opplastet fil på en sikker måte -
funksjonen
file_exists,
som sjekker om en fil eksisterer (men ikke bare opplastede) -
funksjonen
tmpfile,
som oppretter en midlertidig fil -
funksjonen
is_file,
som sjekker en fil