PHP-переместить файл в другую папку на сервере


мне нужно разрешить пользователям на моем сайте удалять свои изображения с сервера после их загрузки, если они больше не хотят их. Я ранее использовал unlink функция в PHP, но с тех пор было сказано, что это может быть довольно рискованно и проблема безопасности. (Предыдущий код ниже:)

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

а теперь я хочу просто переместить файл в другую папку. Это должно быть возможно сделать через долгое время после того, как они впервые загрузили файл, поэтому каждый раз, когда они входят в систему свой счет. Если у меня есть основная папка, в которой хранятся изображения пользователей:

user/

и затем в этой папке под названием del, которая является местом назначения, чтобы поместить их нежелательные изображения:

user/del/

есть ли команда для перемещения файла в другую папку? Так что говорю:

user/image1.jpg

переход к/становится

user/del/image1.jpg
4 135

4 ответа:

The

использовать переименовать().

rename("user/image1.jpg", "user/del/image1.jpg");

Я вы хотите переместить файл в новый путь с сохранением исходного имени файла. используйте это:

$source_file = 'foo/image.jpg';
$destination_path = 'bar/';
rename($source_file, $destination_path . pathinfo($source_file, PATHINFO_BASENAME));

shell_exec('МВ именем dest_filename');