Funkce is_uploaded_file
Funkce is_uploaded_file kontroluje, zda byl zadaný soubor
nahrán prostřednictvím POST požadavku. Toto je důležitá kontrola bezpečnosti
při práci s nahranými soubory. Funkce přijímá jeden parametr -
cestu ke kontrolovanému souboru, a vrací true, pokud byl soubor
nahrán prostřednictvím POST, a false v opačném případě.
Syntaxe
is_uploaded_file(string $filename): bool
Příklad
Zkontrolujeme, zda byl soubor nahrán prostřednictvím formuláře:
<?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';
}
?>
Příklad
Použití funkce v kombinaci s 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';
}
?>
Viz také
-
funkci
move_uploaded_file,
která bezpečně přesune nahraný soubor -
funkci
file_exists,
která kontroluje existenci souboru (ale ne pouze nahraných) -
funkci
tmpfile,
která vytváří dočasný soubor -
funkci
is_file,
která kontroluje soubor