PHP創(chuàng)建/刪除/復(fù)制文件夾、文件
學(xué)習(xí)了PHP的文件編程,其中PHP自身提供了復(fù)制文件的函數(shù)(copy)。自己也寫(xiě)了一個(gè)功能差不多的復(fù)制圖片的函數(shù),以此在這里記錄一下。
在說(shuō)該函數(shù)之前,先介紹一下使用PHP創(chuàng)建/刪除文件夾、文件等知識(shí)。
1.創(chuàng)建文件夾
<?php //使用 file_exists("d:/mydir") 或 is_dir("d:/mydir")判斷該文件夾是否存在 if(!file_exists("d:/mydir")) { if(mkdir("d:/mydir")) { echo "創(chuàng)建文件夾成功"; }else{ echo "創(chuàng)建文件夾失敗"; } } else { echo "該文件夾已存在"; } ?>
2.創(chuàng)建多級(jí)目錄(上面所說(shuō)的,只能創(chuàng)建一級(jí)目錄)
<?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 "創(chuàng)建文件夾成功"; }else{ echo "創(chuàng)建文件夾失敗"; } } else { echo "該文件夾已存在"; } ?>
3.刪除文件夾
<?php //如果文件夾下有文件,或者目錄,均不能刪除成功 if(rmdir("d:/mydir/p/h/p/test")) { echo "刪除文件夾成功"; } else { echo "刪除文件夾成功"; } ?>
4.文件的創(chuàng)建
<?php //在d:/mydir目錄下,創(chuàng)建一個(gè)文件并寫(xiě)入hello $file_path="d:/mydir2/test.txt"; $fp=fopen($file_path,"w+"); fwrite($fp,"hello,world"); fclose($fp); echo "文件寫(xiě)入成功"; ?>
5.刪除文件
<?php $file_path="d:/mydir2/test.txt"; if(is_file($file_path)) { if(unlink($file_path)) { echo "刪除成功"; } else { echo "刪除失敗"; } } else { echo "文件不存在"; } ?>
復(fù)制文件的函數(shù):
<?php //PHP自身提供的copy文件函數(shù):應(yīng)用拷貝圖片 //copy("來(lái)源","地點(diǎn)") //$file_path=iconv("utf-8","gb2312","含中文路徑"); //將utf-8編碼轉(zhuǎn)為gb2312碼 /*if(!copy("C:\\bh.PNG","D:\\bh2.png")) { echo 'error'; } else { echo 'ok'; }*/ //自制拷貝文件的函數(shù) 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)) { //可創(chuàng)建多級(jí)目錄 mkdir($dir,0777,true); echo "創(chuàng)建目錄成功<br/>"; } $d_fp=fopen($des,"w+"); //$fres=fread($r_fp,filesize($res)); //邊讀邊寫(xiě) $buffer=1024; $fres=""; while(!feof($r_fp)) { $fres=fread($r_fp,$buffer); fwrite($d_fp,$fres); } fclose($r_fp); fclose($d_fp); echo "復(fù)制成功"; } else { echo "源文件不存在"; } } myCopyFunc("C:\\bh.PNG","D:\\PHPTest\\test\bh2.PNG"); //myCopyFunc("C:\\bh.PNG","D:\\bh.PNG"); ?>
以上代碼包含PHP文件編程中的文件讀取與寫(xiě)入功能,希望對(duì)大家學(xué)習(xí)php程序設(shè)計(jì)有所幫助。
- PHP創(chuàng)建多級(jí)目錄的兩種方法
- PHP遞歸創(chuàng)建多級(jí)目錄
- php創(chuàng)建多級(jí)目錄的方法
- PHP使用mkdir創(chuàng)建多級(jí)目錄的方法
- php創(chuàng)建多級(jí)目錄完整封裝類操作方法
- php刪除一個(gè)路徑下的所有文件夾和文件的方法
- PHP刪除目錄及目錄下所有文件的方法詳解
- PHP 刪除文件與文件夾操作 unlink()與rmdir()這兩個(gè)函數(shù)的使用
- PHP刪除指定目錄中的所有目錄及文件的方法
- php刪除文件夾及其文件夾下所有文件的函數(shù)代碼
- php創(chuàng)建多級(jí)目錄與級(jí)聯(lián)刪除文件的方法示例
相關(guān)文章
防止本地用戶用fsockopen DDOS攻擊對(duì)策
php腳本中的 fsockopen 函數(shù),對(duì)外部地址,通過(guò)UDP發(fā)送大量的數(shù)據(jù)包,攻擊對(duì)方2011-11-11jQuery+PHP+ajax實(shí)現(xiàn)微博加載更多內(nèi)容列表功能
這篇文章主要介紹了jQuery+PHP+ajax實(shí)現(xiàn)微博加載更多內(nèi)容列表功能,對(duì)于微博開(kāi)發(fā)來(lái)說(shuō)非常實(shí)用,需要的朋友可以參考下2014-06-06PHP CURL實(shí)現(xiàn)模擬登陸并上傳文件操作示例
這篇文章主要介紹了PHP CURL實(shí)現(xiàn)模擬登陸并上傳文件操作,結(jié)合實(shí)例形式分析了PHP使用curl進(jìn)行模擬登陸與文件傳輸操作具體實(shí)現(xiàn)技巧,需要的朋友可以參考下2020-01-01用mysql觸發(fā)器自動(dòng)更新memcache的實(shí)現(xiàn)代碼
不錯(cuò)的一篇文章,用于項(xiàng)目中可以帶來(lái)更多的便利,按照方法已經(jīng)調(diào)試成功,可以大大提高項(xiàng)目的速度。2009-10-10php 啟動(dòng)時(shí)報(bào)錯(cuò)的簡(jiǎn)單解決方法
php啟動(dòng)時(shí)報(bào)錯(cuò)的情況,想必很多朋友都有遇到吧,下面為大家介紹下比較不錯(cuò)的解決方法2014-01-01PHP實(shí)現(xiàn)動(dòng)態(tài)創(chuàng)建XML文檔的方法
這篇文章主要介紹了PHP實(shí)現(xiàn)動(dòng)態(tài)創(chuàng)建XML文檔的方法,結(jié)合實(shí)例形式分析了php針對(duì)xml格式數(shù)據(jù)的構(gòu)建及文件讀寫(xiě)相關(guān)操作技巧,需要的朋友可以參考下2018-03-03刪除html標(biāo)簽得到純文本可處理嵌套的標(biāo)簽
這篇文章主要介紹了通過(guò)刪除html標(biāo)簽得到的純文本可處理嵌套的標(biāo)簽,需要的朋友可以參考下2014-04-04