激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術(shù)|正則表達(dá)式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務(wù)器之家 - 編程語言 - PHP教程 - PHP操作文件類的函數(shù)代碼(文件和文件夾創(chuàng)建,復(fù)制,移動和刪除)

PHP操作文件類的函數(shù)代碼(文件和文件夾創(chuàng)建,復(fù)制,移動和刪除)

2019-12-17 14:19PHP教程網(wǎng) PHP教程

PHP操作文件類(文件和文件夾創(chuàng)建,復(fù)制,移動和刪除) ,使用也比較方便,需要的朋友可以參考下。

代碼如下:


<? 
/** 
* 操縱文件類 

* 例子: 
* FileUtil::createDir('a/1/2/3'); 測試建立文件夾 建一個a/1/2/3文件夾 
* FileUtil::createFile('b/1/2/3'); 測試建立文件 在b/1/2/文件夾下面建一個3文件 
* FileUtil::createFile('b/1/2/3.exe'); 測試建立文件 在b/1/2/文件夾下面建一個3.exe文件 
* FileUtil::copyDir('b','d/e'); 測試復(fù)制文件夾 建立一個d/e文件夾,把b文件夾下的內(nèi)容復(fù)制進(jìn)去 
* FileUtil::copyFile('b/1/2/3.exe','b/b/3.exe'); 測試復(fù)制文件 建立一個b/b文件夾,并把b/1/2文件夾中的3.exe文件復(fù)制進(jìn)去 
* FileUtil::moveDir('a/','b/c'); 測試移動文件夾 建立一個b/c文件夾,并把a文件夾下的內(nèi)容移動進(jìn)去,并刪除a文件夾 
* FileUtil::moveFile('b/1/2/3.exe','b/d/3.exe'); 測試移動文件 建立一個b/d文件夾,并把b/1/2中的3.exe移動進(jìn)去 
* FileUtil::unlinkFile('b/d/3.exe'); 測試刪除文件 刪除b/d/3.exe文件 
* FileUtil::unlinkDir('d'); 測試刪除文件夾 刪除d文件夾 
*/ 
class FileUtil { 
/** 
* 建立文件夾 

* @param string $aimUrl 
* @return viod 
*/ 
function createDir($aimUrl) { 
$aimUrl = str_replace('', '/', $aimUrl); 
$aimDir = ''; 
$arr = explode('/', $aimUrl); 
foreach ($arr as $str) { 
$aimDir .= $str . '/'; 
if (!file_exists($aimDir)) { 
mkdir($aimDir); 



/** 
* 建立文件 

* @param string $aimUrl 
* @param boolean $overWrite 該參數(shù)控制是否覆蓋原文件 
* @return boolean 
*/ 
function createFile($aimUrl, $overWrite = false) { 
if (file_exists($aimUrl) && $overWrite == false) { 
return false; 
} elseif (file_exists($aimUrl) && $overWrite == true) { 
FileUtil::unlinkFile($aimUrl); 

$aimDir = dirname($aimUrl); 
FileUtil::createDir($aimDir); 
touch($aimUrl); 
return true; 

/** 
* 移動文件夾 

* @param string $oldDir 
* @param string $aimDir 
* @param boolean $overWrite 該參數(shù)控制是否覆蓋原文件 
* @return boolean 
*/ 
function moveDir($oldDir, $aimDir, $overWrite = false) { 
$aimDir = str_replace('', '/', $aimDir); 
$aimDir = substr($aimDir, -1) == '/' ? $aimDir : $aimDir . '/'; 
$oldDir = str_replace('', '/', $oldDir); 
$oldDir = substr($oldDir, -1) == '/' ? $oldDir : $oldDir . '/'; 
if (!is_dir($oldDir)) { 
return false; 

if (!file_exists($aimDir)) { 
FileUtil::createDir($aimDir); 

@$dirHandle = opendir($oldDir); 
if (!$dirHandle) { 
return false; 

while(false !== ($file = readdir($dirHandle))) { 
if ($file == '.' || $file == '..') { 
continue; 

if (!is_dir($oldDir.$file)) { 
FileUtil::moveFile($oldDir . $file, $aimDir . $file, $overWrite); 
} else { 
FileUtil::moveDir($oldDir . $file, $aimDir . $file, $overWrite); 


closedir($dirHandle); 
return rmdir($oldDir); 

/** 
* 移動文件 

* @param string $fileUrl 
* @param string $aimUrl 
* @param boolean $overWrite 該參數(shù)控制是否覆蓋原文件 
* @return boolean 
*/ 
function moveFile($fileUrl, $aimUrl, $overWrite = false) { 
if (!file_exists($fileUrl)) { 
return false; 

if (file_exists($aimUrl) && $overWrite = false) { 
return false; 
} elseif (file_exists($aimUrl) && $overWrite = true) { 
FileUtil::unlinkFile($aimUrl); 

$aimDir = dirname($aimUrl); 
FileUtil::createDir($aimDir); 
rename($fileUrl, $aimUrl); 
return true; 

/** 
* 刪除文件夾 

* @param string $aimDir 
* @return boolean 
*/ 
function unlinkDir($aimDir) { 
$aimDir = str_replace('', '/', $aimDir); 
$aimDir = substr($aimDir, -1) == '/' ? $aimDir : $aimDir.'/'; 
if (!is_dir($aimDir)) { 
return false; 

$dirHandle = opendir($aimDir); 
while(false !== ($file = readdir($dirHandle))) { 
if ($file == '.' || $file == '..') { 
continue; 

if (!is_dir($aimDir.$file)) { 
FileUtil::unlinkFile($aimDir . $file); 
} else { 
FileUtil::unlinkDir($aimDir . $file); 


closedir($dirHandle); 
return rmdir($aimDir); 

/** 
* 刪除文件 

* @param string $aimUrl 
* @return boolean 
*/ 
function unlinkFile($aimUrl) { 
if (file_exists($aimUrl)) { 
unlink($aimUrl); 
return true; 
} else { 
return false; 


/** 
* 復(fù)制文件夾 

* @param string $oldDir 
* @param string $aimDir 
* @param boolean $overWrite 該參數(shù)控制是否覆蓋原文件 
* @return boolean 
*/ 
function copyDir($oldDir, $aimDir, $overWrite = false) { 
$aimDir = str_replace('', '/', $aimDir); 
$aimDir = substr($aimDir, -1) == '/' ? $aimDir : $aimDir.'/'; 
$oldDir = str_replace('', '/', $oldDir); 
$oldDir = substr($oldDir, -1) == '/' ? $oldDir : $oldDir.'/'; 
if (!is_dir($oldDir)) { 
return false; 

if (!file_exists($aimDir)) { 
FileUtil::createDir($aimDir); 

$dirHandle = opendir($oldDir); 
while(false !== ($file = readdir($dirHandle))) { 
if ($file == '.' || $file == '..') { 
continue; 

if (!is_dir($oldDir . $file)) { 
FileUtil::copyFile($oldDir . $file, $aimDir . $file, $overWrite); 
} else { 
FileUtil::copyDir($oldDir . $file, $aimDir . $file, $overWrite); 


return closedir($dirHandle); 

/** 
* 復(fù)制文件 

* @param string $fileUrl 
* @param string $aimUrl 
* @param boolean $overWrite 該參數(shù)控制是否覆蓋原文件 
* @return boolean 
*/ 
function copyFile($fileUrl, $aimUrl, $overWrite = false) { 
if (!file_exists($fileUrl)) { 
return false; 

if (file_exists($aimUrl) && $overWrite == false) { 
return false; 
} elseif (file_exists($aimUrl) && $overWrite == true) { 
FileUtil::unlinkFile($aimUrl); 

$aimDir = dirname($aimUrl); 
FileUtil::createDir($aimDir); 
copy($fileUrl, $aimUrl); 
return true; 


?> 


另一種調(diào)用方式: 

復(fù)制代碼代碼如下:


$fu = new FileUtil(); 
$fu->copyFile('a/1/2/3', 'a/1/2/4'); 

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 91在线观看 | 久久成人精品视频 | 九九热在线观看视频 | 国产精品久久久久久久久久 | 一级免费特黄视频 | 精品中文字幕在线播放 | 嗯~啊~弄嗯~啊h高潮视频 | 羞羞视频免费网站入口 | 精品久久久久久久久久久αⅴ | 精品久久久久久久久中文字幕 | 污黄视频在线观看 | 国产午夜精品久久久久婷 | 一级啪啪片 | 91丝袜 | 日韩在线视频观看免费 | 成年免费视频黄网站在线观看 | 中文字幕天堂在线 | 午夜视频国产 | 一级毛片真人免费播放视频 | 羞羞视频免费网站入口 | 亚州精品国产 | 欧美a欧美 | 高清一区二区在线观看 | 欧美18一19sex性护士农村 | 久久精品中文字幕一区二区 | 日日操夜夜透 | 亚洲免费永久 | 亚洲免费视频大全 | 精精国产xxxx视频在线野外 | 日韩剧情片 | 日韩精品中文字幕在线播放 | 欧美18videos性处按摩 | 亚洲日本欧美 | 亚洲成人在线视频网站 | 7777视频| 香蕉久久久久久 | 精品国产91久久久久久久妲己 | 日本黄色片免费播放 | 国产一有一级毛片视频 | 视频一区二区国产 | 午夜国产小视频 |