当前位置:首页 > 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创建文件夹

分享到: