PHP创建/删除/复制文件夹、文件

yipeiwu_com6年前PHP代码库

学习了PHP的文件编程,其中PHP自身提供了复制文件的函数(copy)。自己也写了一个功能差不多的复制图片的函数,以此在这里记录一下。
在说该函数之前,先介绍一下使用PHP创建/删除文件夹、文件等知识。
1.创建文件夹

<?php 
 //使用 file_exists("d:/mydir") 或 is_dir("d:/mydir")判断该文件夹是否存在 
 if(!file_exists("d:/mydir")) { 
  if(mkdir("d:/mydir")) { 
   echo "创建文件夹成功"; 
  }else{ 
   echo "创建文件夹失败"; 
  } 
 } else { 
  echo "该文件夹已存在"; 
 } 
?> 

 2.创建多级目录(上面所说的,只能创建一级目录)

<?php 
 //使用 file_exists("d:/mydir") 或 is_dir("d:/mydir")判断该文件夹是否存在 
 $path="d:/mydir/p/h/p/test"; 
 if(!file_exists($path)) { 
  if(mkdir($path,0777,true)) { 
   echo "创建文件夹成功"; 
  }else{ 
   echo "创建文件夹失败"; 
  } 
 } else { 
  echo "该文件夹已存在"; 
 } 
?> 

3.删除文件夹

<?php 
 //如果文件夹下有文件,或者目录,均不能删除成功 
 if(rmdir("d:/mydir/p/h/p/test")) { 
  echo "删除文件夹成功"; 
 } else { 
  echo "删除文件夹成功"; 
 } 
?> 

 4.文件的创建

<?php 
 //在d:/mydir目录下,创建一个文件并写入hello 
 $file_path="d:/mydir2/test.txt"; 
 $fp=fopen($file_path,"w+"); 
  
 fwrite($fp,"hello,world"); 
 fclose($fp); 
 echo "文件写入成功"; 
?>

 5.删除文件

<?php 
 $file_path="d:/mydir2/test.txt"; 
 if(is_file($file_path)) { 
  if(unlink($file_path)) { 
   echo "删除成功"; 
  } else { 
   echo "删除失败"; 
  } 
 } else { 
  echo "文件不存在"; 
 } 
?> 

复制文件的函数:

<?php 
 //PHP自身提供的copy文件函数:应用拷贝图片 
 //copy("来源","地点") 
 //$file_path=iconv("utf-8","gb2312","含中文路径"); 
 //将utf-8编码转为gb2312码 
 /*if(!copy("C:\\bh.PNG","D:\\bh2.png")) { 
  echo 'error'; 
 } else { 
  echo 'ok'; 
 }*/ 
 
 
 //自制拷贝文件的函数 
 function myCopyFunc($res, $des) { 
  if(file_exists($res)) { 
   $r_fp=fopen($res,"r"); 
    
   //定位 
   $pos=strripos($des,"\\"); 
   $dir=substr($des,0,$pos); 
   if(!file_exists($dir)) { 
    //可创建多级目录 
    mkdir($dir,0777,true); 
    echo "创建目录成功<br/>"; 
   } 
 
   $d_fp=fopen($des,"w+"); 
   //$fres=fread($r_fp,filesize($res)); 
 
   //边读边写 
   $buffer=1024; 
   $fres=""; 
   while(!feof($r_fp)) { 
    $fres=fread($r_fp,$buffer); 
    fwrite($d_fp,$fres); 
   } 
 
   fclose($r_fp); 
   fclose($d_fp); 
 
   echo "复制成功"; 
  } else { 
   echo "源文件不存在"; 
  } 
 } 
 
 myCopyFunc("C:\\bh.PNG","D:\\PHPTest\\test\bh2.PNG"); 
 //myCopyFunc("C:\\bh.PNG","D:\\bh.PNG"); 
?> 

以上代码包含PHP文件编程中的文件读取与写入功能,希望对大家学习php程序设计有所帮助。

相关文章

基于session_unset与session_destroy的区别详解

session_unset()释放当前在内存中已经创建的所有$_SESSION变量,但不删除session文件以及不释放对应的sessionidsession_destroy()删除当前...

PHP GD库添加freetype拓展的方法

背景:业务需求要用到 imagefttext 函数,发现GD库一开始安装时没有添加 FreeType linux版本 centos 6.6 安装流程(由于服务器为分布式内网服务器,无法使...

php 向访客和爬虫显示不同的内容

听说本方法会触犯搜索引擎的一些操作原则, 有可能被被各搜索引擎处罚, 甚至删除网站. 所以我刚刚已经撤下这样的处理, 直到确定其不属于作弊. 有魄力的朋友可以继续使用, 但后果自负. 本...

Yii 2.0中场景的使用教程

前言 熟悉Yii框架的人都知道,灵活的使用场景可以达到事半功倍的效果! 比如普通的数据的新增、修改,新增需要验证其中两个字段,而修改只需要验证其中一个字段;还有种情况,也是我们现在用到的...

PHP和C#可共用的可逆加密算法详解

在一些项目中要求在php中生成加密,然后在asp.net中接受过来的密码再解密,下面和大家分享一个PHP与asp.net C#可共用的可逆加密算法,感兴趣的可以参考参考。 php加密算法...