学习了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程序设计有所帮助。
本文地址:https://www.stayed.cn/item/26042
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我