为了账号安全,请及时绑定邮箱和手机立即绑定

PHP-将文件移至服务器上的其他文件夹

PHP-将文件移至服务器上的其他文件夹

PHP
幕布斯7119047 2019-11-26 14:43:47
如果他们不再需要我的网站上的用户,则在他们上载图像后,需要允许他们从服务器上删除它们的图像。我以前unlink在PHP中使用该函数,但此后被告知这可能具有很高的风险和安全性。(下面的先前代码:)if(unlink($path.'image1.jpg')){      // deleted}相反,我现在只想将文件移动到其他文件夹中。他们必须先上传文件很长时间,然后才能登录帐户。如果我有存储用户图像的主文件夹:user/然后在其中一个名为del的文件夹中放置不需要的图像:user/del/是否有命令将文件移动到其他文件夹?这样说:user/image1.jpg移至/成为user/del/image1.jpg
查看完整描述

3 回答

?
函数式编程

TA贡献1807条经验 获得超9个赞

该rename功能做到这一点


docs重命名


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


如果要将现有文件放在同一位置,则应使用 copy


docs复制


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


如果您想移动上载的文件,请使用move_uploaded_file,尽管与rename此功能几乎相同,但它还会检查给定文件是否是通过上载的文件POST,这可以防止例如移动本地文件


docs 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");

    }

}


查看完整回答
反对 回复 2019-11-26
?
暮色呼如

TA贡献1853条经验 获得超9个赞

如果要将文件移动到新路径并保留原始文件名。用这个:


$source_file = 'foo/image.jpg';

$destination_path = 'bar/';

rename($source_file, $destination_path . pathinfo($source_file, PATHINFO_BASENAME));


查看完整回答
反对 回复 2019-11-26
?
喵喔喔

TA贡献1735条经验 获得超5个赞

我使用外壳读取所有数据文件,然后分配给数组。然后我将文件移到最高位置。


i=0 

for file in /home/*.gz; do

    $file

    arr[i]=$file

    i=$((i+1)) 

done 

mv -f "${arr[0]}" /var/www/html/


查看完整回答
反对 回复 2019-11-26
  • 3 回答
  • 0 关注
  • 563 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信