2014-11-04 65 views
-1

我想在臨時文件夾中上傳的文件移動到新的文件夾...的oldpathnewpath是正確的,但該文件不動...我試圖var_dumpmove_uploaded_file並得到結果布爾(假)move_uploaded_file不起作用?

以下是我的代碼:

$theid = Yii::app()->user->getState('id'); 
$folder = 'developers_apk'.DIRECTORY_SEPARATOR .$theid; 

    if(!is_dir($folder)){ 
     mkdir($folder, 0755); 

    } 
    if(file_exists($folder)){ 
     $today = date("Ymd"); 
     $oldpath = Yii::app()->params['tmp_folder'] .$today.DIRECTORY_SEPARATOR.$apkfilename; 
     $newpath = 'developers_apk'.DIRECTORY_SEPARATOR .$theid.DIRECTORY_SEPARATOR.$apkfilename; 
     move_uploaded_file($oldpath,$newpath); 

     if(move_uploaded_file($oldpath,$newpath)){    
      print_r("ok"); 
     }else{ 
      var_dump(move_uploaded_file($oldpath,$newpath)); 
      print_r("NOT"); 
     } 
    }else{ 

     print_r("NOT"); 
    } 

我錯過出頭?或者對此有何建議?謝謝

+2

能爲你傾倒的2個變量? ''move_uploaded_file()'調用之前調用'var_dump($ oldpath);'''var_dump($ newpath);''。 – 2014-11-04 07:30:49

+0

@Glavić'串(75) 「C:\ XAMPP \ htdocs中\ dev的\開放\ TEMP \ 20141104 \ 5b224412ed04f28c8b2d34320a66321d.apk」 串(54) 「developers_apk \ 66 \ 5b224412ed04f28c8b2d34320a66321d.apk」' – TheSmile 2014-11-04 07:32:46

+0

@Glavić路徑看起來是正確的 – TheSmile 2014-11-04 07:34:08

回答

0

我試過使用copy然後unlink它的工作! =)

$theid = Yii::app()->user->getState('id'); 
$folder = 'developers_apk'.DIRECTORY_SEPARATOR .$theid; 

    if(!is_dir($folder)){ 
     mkdir($folder, 0755); 
    } 

    if(file_exists($folder)){ 
     $today = date("Ymd"); 
     $apkoldpath = Yii::app()->params['tmp_folder'] .$today.DIRECTORY_SEPARATOR.$apkfilename; 
     $apknewpath = 'developers_apk'.DIRECTORY_SEPARATOR .$theid.DIRECTORY_SEPARATOR.$apkfilename; 
     copy($apkoldpath,$apknewpath); 

     $pngoldpath = Yii::app()->params['tmp_folder'] .$today.DIRECTORY_SEPARATOR.$pngfilename; 
     $pngnewpath = 'developers_apk'.DIRECTORY_SEPARATOR .$theid.DIRECTORY_SEPARATOR.$pngfilename; 
     copy($pngoldpath,$pngnewpath); 

     if(file_exists($apknewpath)){ 
      unlink($apkoldpath); 
     } 
     if(file_exists($pngnewpath)){ 
      unlink($pngoldpath); 
     } 
    } 
0

您正在呼叫move_uploaded_file()多次,這是不正確的。

試試這個:

if(file_exists($folder)){ 
    $today = date("Ymd"); 
    $oldpath = Yii::app()->params['tmp_folder'] .$today.DIRECTORY_SEPARATOR.$apkfilename; 
    $newpath = 'developers_apk'.DIRECTORY_SEPARATOR .$theid.DIRECTORY_SEPARATOR.$apkfilename; 

    if(move_uploaded_file($oldpath,$newpath)){    
     print_r("ok"); 
    }else{ 
     print_r("NOT"); 
    } 
}else{ 
    print_r("NOT"); 
} 
+0

謝謝你的回答...我試過的結果是**不** ** ...我試過使用複製然後解除鏈接它工作! ... – TheSmile 2014-11-04 08:03:31