move_uploaded_file
]Podporované v PHP 4 >= 4.0.3, PHP 5 Syntax
bool move_uploaded_file ( string $názovsúboru, string $cieľ )
Popis
Príkaz jazyka PHP
Presunie uploadnutý súbor na nové miesto.
Táto funkcia skontroluje, či súbor špecifikovaný v parametri názovsúboru je platný uploadnutý súbor (t. j. či bol súbor uploadnutý použitím mechanizmov HTTP POST PHP). Ak je súbor platný, bude presunutý na miesto špecifikované parametrom cieľ.
Ak názovsúboru nie je platný uploadnutý súbor nevykoná sa nič a funkcia move_uploaded_file() vráti FALSE.
Ak názovsúboru je platný uploadnutý súbor, ale presun nemôže byť z nejakého dôvodu uskutočnený, nevykoná sa nič a move_uploaded_file() vráti FALSE. Navyše bude vydané varovanie.
Tento spôsob kontroly je dôležitý najmä v prípadoch, keď manipulácia s uploadnutnými súbormi môže odhaliť ich obsah užívateľovi, či dokonca ostatným užívateľom systému.
Poznámka: move_uploaded_file() nie je ovplyvnená režimom safe mode a jeho obmedzeniami cez UID. Toto však nie je nebezpečné pretože move_uploaded_file() pracuje výlučne na súboroch, ktoré boli uploadnuté cez PHP.
Varovanie: Ak cieľový súbor existuje, bude prepísaný.
Príklad
<?php
// In PHP versions earlier than 4.1.0, $HTTP_POST_FILES should be used instead
// of $_FILES.
$uploaddir =
'/var/www/uploads/';
$uploadfile =
$uploaddir . basename
($_FILES[
'userfile'][
'name']
);
echo '<pre>';
if (move_uploaded_file($_FILES[
'userfile'][
'tmp_name'],
$uploadfile)) {
echo "File is valid, and was successfully uploaded.\n";
} else {
echo "Possible file upload attack!\n";
}
echo 'Here is some more debugging info:';
print_r
($_FILES);
print "</pre>";
?>
Pozri aj
is_uploaded_file
]