當前位置:首頁 > PHP教程 > php文件操作 > 列表

PHP創建/刪除/復制文件夾、文件

發布:smiling 來源: PHP粉絲網  添加日期:2019-08-12 11:45:23 瀏覽: 評論:0 

學習了PHP的文件編程,其中PHP自身提供了復制文件的函數(copy),自己也寫了一個功能差不多的復制圖片的函數,以此在這里記錄一下。

在說該函數之前,先介紹一下使用PHP創建/刪除文件夾、文件等知識。

1.創建文件夾

  1. <?php  
  2.  
  3.  //使用 file_exists("d:/mydir") 或 is_dir("d:/mydir")判斷該文件夾是否存在  
  4.  
  5.  if(!file_exists("d:/mydir")) {  
  6.  
  7.   if(mkdir("d:/mydir")) {  
  8.  
  9.    echo "創建文件夾成功";  
  10.  
  11.   }else{  
  12.  
  13.    echo "創建文件夾失敗";  
  14. //phpfensi.com 
  15.   }  
  16.  
  17.  } else {  
  18.  
  19.   echo "該文件夾已存在";  
  20.  
  21.  }  
  22.  
  23. ?> 

2.創建多級目錄(上面所說的,只能創建一級目錄)

  1. <?php  
  2.  
  3.  //使用 file_exists("d:/mydir") 或 is_dir("d:/mydir")判斷該文件夾是否存在  
  4.  
  5.  $path="d:/mydir/p/h/p/test";  
  6.  
  7.  if(!file_exists($path)) {  
  8.  
  9.   if(mkdir($path,0777,true)) {  
  10.  
  11.    echo "創建文件夾成功";  
  12.  
  13.   }else{  
  14.  
  15.    echo "創建文件夾失敗";  
  16.  
  17.   }  
  18.  
  19.  } else {  
  20.  
  21.   echo "該文件夾已存在";  
  22.  
  23.  }  
  24.  
  25. ?>  

3.刪除文件夾

  1. <?php  
  2.  
  3.  //如果文件夾下有文件,或者目錄,均不能刪除成功  
  4.  
  5.  if(rmdir("d:/mydir/p/h/p/test")) {  
  6.  
  7.   echo "刪除文件夾成功";  
  8.  
  9.  } else {  
  10.  
  11.   echo "刪除文件夾成功";  
  12.  
  13.  }  
  14.  
  15. ?> 

4.文件的創建

  1. <?php  
  2.  
  3.  //在d:/mydir目錄下,創建一個文件并寫入hello  
  4.  
  5.  $file_path="d:/mydir2/test.txt";  
  6.  
  7.  $fp=fopen($file_path,"w+");  
  8.  
  9.     
  10.  
  11.  fwrite($fp,"hello,world");  
  12.  
  13.  fclose($fp);  
  14.  
  15.  echo "文件寫入成功";  
  16.  
  17. ?> 

5.刪除文件

  1. <?php  
  2.  
  3.  $file_path="d:/mydir2/test.txt";  
  4.  
  5.  if(is_file($file_path)) {  
  6.  
  7.   if(unlink($file_path)) {  
  8.  
  9.    echo "刪除成功";  
  10.  
  11.   } else {  
  12.  
  13.    echo "刪除失敗";  
  14.  
  15.   }  
  16.  
  17.  } else {  
  18.  
  19.   echo "文件不存在";  
  20.  
  21.  }  
  22.  
  23. ?> 

復制文件的函數:

  1. <?php  
  2.  
  3.  //PHP自身提供的copy文件函數:應用拷貝圖片  
  4.  
  5.  //copy("來源","地點")  
  6.  
  7.  //$file_path=iconv("utf-8","gb2312","含中文路徑");  
  8.  
  9.  //將utf-8編碼轉為gb2312碼  
  10.  
  11.  /*if(!copy("C:\\bh.PNG","D:\\bh2.png")) {  
  12.  
  13.   echo 'error';  
  14.  
  15.  } else {  
  16.  
  17.   echo 'ok';  
  18.  
  19.  }*/ 
  20.  
  21.  
  22.  //自制拷貝文件的函數  
  23.  
  24.  function myCopyFunc($res$des) {  
  25.  
  26.   if(file_exists($res)) {  
  27.  
  28.    $r_fp=fopen($res,"r");  
  29.  
  30.    //定位  
  31.  
  32.    $pos=strripos($des,"\\");  
  33.  
  34.    $dir=substr($des,0,$pos);  
  35.  
  36.    if(!file_exists($dir)) {  
  37.  
  38.     //可創建多級目錄  
  39.  
  40.     mkdir($dir,0777,true);  
  41.  
  42.     echo "創建目錄成功<br>";  
  43.  
  44.    }  
  45.  
  46.    $d_fp=fopen($des,"w+");  
  47.  
  48.    //$fres=fread($r_fp,filesize($res));  
  49.  
  50.    //邊讀邊寫  
  51.  
  52.    $buffer=1024;  
  53.  
  54.    $fres="";  
  55.  
  56.    while(!feof($r_fp)) {  
  57.  
  58.     $fres=fread($r_fp,$buffer);  
  59.  
  60.     fwrite($d_fp,$fres);  
  61.  
  62.    }  
  63.  
  64.    fclose($r_fp);  
  65.  
  66.    fclose($d_fp);  
  67.  
  68.    echo "復制成功";  
  69.  
  70.   } else {  
  71.  
  72.    echo "源文件不存在";  
  73.  
  74.   }  
  75.  
  76.  }  
  77.  
  78.  
  79.  myCopyFunc("C:\\bh.PNG","D:\\PHPTest\\test\bh2.PNG");  
  80.  
  81.  //myCopyFunc("C:\\bh.PNG","D:\\bh.PNG");  
  82.  
  83. ?>  

以上代碼包含PHP文件編程中的文件讀取與寫入功能,希望對大家學習php程序設計有所幫助。

Tags: PHP創建文件夾

分享到:

天气网首页彩吧