如果他们不再需要我的网站上的用户,则在他们上载图像后,需要允许他们从服务器上删除它们的图像。我以前unlink在PHP中使用该函数,但此后被告知这可能具有很高的风险和安全性。(下面的先前代码:)
unlink
if(unlink($path.'image1.jpg')){ // deleted }
相反,我现在只想将文件移动到其他文件夹中。他们必须先上传文件很长时间,然后才能登录帐户。如果我有存储用户图像的主文件夹:
user/
然后在其中一个名为del的文件夹中放置不需要的图像:
user/del/
是否有命令将文件移动到其他文件夹?这样说:
user/image1.jpg
移至/成为
user/del/image1.jpg
该rename功能做到这一点
rename
docs重命名
rename('image1.jpg', 'del/image1.jpg');
如果要将现有文件放在同一位置,则应使用 copy
copy
docs复制
copy('image1.jpg', 'del/image1.jpg');
如果您想移动上载的文件,请使用move_uploaded_file,尽管与rename此功能几乎相同,但它还会检查给定文件是否是通过上载的文件POST,这可以防止例如移动本地文件
move_uploaded_file
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"); } }
来自文档的代码片段