2013-01-01 259 views
2

我的Web應用程序存儲在XAMPP/htdocs/projectname /目錄中。我有圖像(來源)& img(目標)文件夾在上面的目錄中。我正在寫下面的代碼行以獲取從一個文件夾到另一個文件夾的副本圖像。但我得到以下Warnnigs:(警告:複製(資源ID#3/image1.jpg):無法打開流:沒有這樣的文件或目錄在C:\ xampp \ htdocs)和圖像不復制到目的地。將圖像從一個文件夾複製到另一個文件夾

<?php 
     $src = opendir('../images/'); 
    $dest = opendir('../img/'); 
    while($readFile = readdir($src)){ 
      if($readFile != '.' && $readFile != '..'){ 
       if(!file_exists($readFile)){ 
       if(copy($src.$readFile, $dest.$readFile)){ 
       echo "Copy file"; 
      }else{ 
        echo "Canot Copy file"; 
       } 
        } 
      } 
     } 
?> 
+0

請務必設置正確的權限,目標文件夾 –

回答

1

只是一個猜測(對不起),但我不相信你可以使用$src = opendir(...)$src.$readFile這樣。試着這樣做:

$srcPath = '../images/'; 
$destPath = '../img/'; 

$srcDir = opendir($srcPath); 
while($readFile = readdir($srcDir)) 
{ 
    if($readFile != '.' && $readFile != '..') 
    { 
     /* this check doesn't really make sense to me, 
      you might want !file_exists($destPath . $readFile) */ 
     if (!file_exists($readFile)) 
     { 
      if(copy($srcPath . $readFile, $destPath . $readFile)) 
      { 
       echo "Copy file"; 
      } 
      else 
      { 
       echo "Canot Copy file"; 
      } 
     } 
    } 
} 

closedir($srcDir); // good idea to always close your handles 
0

你給錯了路,如果你的文件的路徑說的script.php是「XAMPP/htdocs中/項目名稱/ script.php的」和圖像和IMG都是在「項目名稱」文件夾比你應該使用$ srcPath和$ destPath以下值,改變他們的價值觀

$srcPath = 'images/'; 
$destPath = 'img/'; 
1

替換代碼中的這條線,這肯定會工作。

if(copy("../images/".$readFile, "../img/".$readFile)) 
0
public function getImage() 
    { 

    $Path='image/'; //complete image directory path 
    $destPath = '/edit_image/'; 
    // makes new folder, if not exists. 
    if(!file_exists($destPath) || file_exists($destPath)) 
    { 
     rmdir($destPath); 
     mkdir($destPath, 0777); 
    } 

    $imageName='abc.jpg'; 
    $Path=$Path.$imageName; 
    $dest=$destPath.$imageName; 
    if(copy($Path, $dest)); 
    } 
相關問題