小编典典

PHP - 将文件移动到服务器上的不同文件夹中

all

如果他们不再需要它们,我需要允许我网站上的用户在他们上传图片后从服务器上删除他们的图片。我以前unlink在 PHP
中使用该函数,但后来被告知这可能非常危险并且是一个安全问题。(下面的以前的代码:)

if(unlink($path.'image1.jpg')){ 
     // deleted
}

相反,我现在只想将文件移动到不同的文件夹中。这必须能够在他们首次上传文件后很长时间才能完成,以便他们在任何时候登录他们的帐户。如果我有存储用户图像的主文件夹:

user/

然后在其中一个名为 del 的文件夹中放置不需要的图像:

user/del/

是否有将文件移动到不同文件夹的命令?所以说:

user/image1.jpg

移动到/变成

user/del/image1.jpg

阅读 70

收藏
2022-06-20

共1个答案

小编典典

rename函数执行此操作

文档重命名

rename('image1.jpg', 'del/image1.jpg');

如果您想将现有文件保留在同一个地方,您应该使用copy

文档副本

copy('image1.jpg', 'del/image1.jpg');

如果你想移动上传的文件,move_uploaded_file使用rename``POST

文档 move_uploaded_file

$uploads_dir = '/uploads';
foreach ($_FILES["pictures"]["error"] as $key => $error) {
    if ($error == UPLOAD_ERR_OK) {
        $tmp_name = $_FILES["pictures"]["tmp_name"][$key];
        $name = $_FILES["pictures"]["name"][$key];
        move_uploaded_file($tmp_name, "$uploads_dir/$name");
    }
}

文档中的代码片段

2022-06-20