dongxi1320 2019-03-10 16:32
浏览 75
已采纳

使用PHP将图像文件从旧文件夹复制到新文件夹

I want to copy all image files from my images folder to new folder using PHP. I tried the code below but having errors.

<?php
 $old_dir = 'images/';
 $new_dir = 'images/new_update';
 $scanned_directory = preg_grep('/^([^.])/', scandir($old_dir));

 foreach ($scanned_directory as $key ) {    
    $source_file = $old_dir.$key;
    $destination_path = $new_dir;

    if(rename($source_file.'/'.$key,$destination_path.'/'.$key))
       echo "Success";
    else 
       echo "Fail";    
 }
?>

Error: Warning: rename(images/Screenshot 2019-02-04 at 1.24.35 PM.png/Screenshot 2019-02-04 at 1.24.35 PM.png,images/del//Screenshot 2019-02-04 at 1.24.35 PM.png): Not a directory in /Applications/XAMPP/xamppfiles/htdocs/spartanlink/news/gallery/scandir.php on line 12

I don't know why I am getting that error. Thanks for the help

  • 写回答

1条回答 默认 最新

  • douxin2002 2019-03-10 16:38
    关注

    You are referencing $key twice, once when defining $source_file and once when calling rename. It should be more like this:

    $source_file = $old_dir.$key;
    $destination_path = $new_dir;
    
    if(rename($source_file,$destination_path.'/'.$key))
       echo "Success";
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?