我有一个上传表单,用户可以将当前正在上传的图像上传到我称为“temp”的文件夹,并将其位置保存在名为$_SESSION [‘uploaded_photos’]的数组中.一旦用户按下“下一页”按钮,我希望它将文件移动到之前动态创建的新文件夹.
if(isset($_POST['next_page'])) {
if (!is_dir('../images/uploads/listers/'.$_SESSION['loggedin_lister_id'])) {
mkdir('../images/uploads/listers/'.$_SESSION['loggedin_lister_id']);
}
foreach($_SESSION['uploaded_photos'] as $key => $value) {
$target_path = '../images/uploads/listers/'.$_SESSION['loggedin_lister_id'].'/';
$target_path = $target_path . basename($value);
if(move_uploaded_file($value, $target_path)) {
echo "The file ". basename($value). " has been uploaded
";
} else{
echo "There was an error uploading the file, please try again!";
}
} //end foreach
} //end if isset next_page
正在使用的$值的示例是:
../images/uploads/temp/IMG_0002.jpg
并且正在使用的$target_path的示例是:
../images/uploads/listers/186/IMG_0002.jpg
我可以看到文件位于临时文件夹中,这两个路径对我来说都很好,我检查过,确保mkdir功能实际上创建了它所做的文件夹.
如何使用php将文件移动到另一个文件夹?