学习了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
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我