php更改目錄及子目錄下所有的文件后綴的代碼
更新時(shí)間:2010年09月24日 12:34:30 作者:
今天遇到要改變當(dāng)前目錄下指定類型的文件類型,本來(lái)想要用批處理來(lái)做這個(gè),結(jié)果沒(méi)找到合適。就自己去查了下資料,用Php來(lái)處理一下。
不是很經(jīng)常處理文件,所以對(duì)遍歷目錄還不是很熟悉,找了一下資料,自己修改一下。
讓大家看看是否需要完善的
代碼主要的目的是 批量更改 文件后綴 由于淘寶數(shù)據(jù)包圖片類型的不同 所以要改一下適合的。
<?php
//本文件和要改變的目錄下的文件 放在同一文件夾下
define("STA",".gif");//原來(lái)的文件格式
define("END",".jpg");//要改變的格式
$dir="./";
$arr=allfile($dir);
foreach($arr as $t)
{
$t=str_replace(".//","",$t);
if(substr_count($t,STA)>0)
{
$f2=str_replace(STA,"",$t);
rename($t,$f2.END);
}
}
//獲取目錄下所有文件的函數(shù)
function allfile($dir)
{
$files=array();
if(is_file($dir))
{
return $dir;
}
$handle = opendir($dir);
if($handle) {
while(false !== ($file = readdir($handle))) {
if ($file != '.' && $file != '..') {
$filename = $dir . "/" . $file;
if(is_file($filename)) {
$files[] = $filename;
}else {
$files = array_merge($files, allfile($filename));
}
}
} // end while
closedir($handle);
}
return $files;
}
?>
讓大家看看是否需要完善的
代碼主要的目的是 批量更改 文件后綴 由于淘寶數(shù)據(jù)包圖片類型的不同 所以要改一下適合的。
復(fù)制代碼 代碼如下:
<?php
//本文件和要改變的目錄下的文件 放在同一文件夾下
define("STA",".gif");//原來(lái)的文件格式
define("END",".jpg");//要改變的格式
$dir="./";
$arr=allfile($dir);
foreach($arr as $t)
{
$t=str_replace(".//","",$t);
if(substr_count($t,STA)>0)
{
$f2=str_replace(STA,"",$t);
rename($t,$f2.END);
}
}
//獲取目錄下所有文件的函數(shù)
function allfile($dir)
{
$files=array();
if(is_file($dir))
{
return $dir;
}
$handle = opendir($dir);
if($handle) {
while(false !== ($file = readdir($handle))) {
if ($file != '.' && $file != '..') {
$filename = $dir . "/" . $file;
if(is_file($filename)) {
$files[] = $filename;
}else {
$files = array_merge($files, allfile($filename));
}
}
} // end while
closedir($handle);
}
return $files;
}
?>
您可能感興趣的文章:
相關(guān)文章
PHP如何限制定時(shí)任務(wù)的進(jìn)程數(shù)量
這篇文章主要給大家介紹了關(guān)于PHP如何限制定時(shí)任務(wù)進(jìn)程數(shù)量的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-03-03PHP偽造來(lái)源HTTP_REFERER的方法實(shí)例詳解
這篇文章主要介紹了PHP偽造來(lái)源HTTP_REFERER的方法,以實(shí)例形式較為詳細(xì)的分析了php偽造來(lái)源HTTP_REFERER的技巧與相關(guān)注意事項(xiàng),非常具有實(shí)用價(jià)值,需要的朋友可以參考下2015-07-07解決PHP Opcache 緩存刷新、代碼重載出現(xiàn)無(wú)法更新代碼的問(wèn)題
這篇文章主要介紹了解決PHP Opcache 緩存刷新、代碼重載出現(xiàn)的無(wú)法更新代碼的問(wèn)題,幫助大家更好的理解和學(xué)習(xí)php,感興趣的朋友可以了解下2020-08-08PHP的構(gòu)造方法,析構(gòu)方法和this關(guān)鍵字詳細(xì)介紹
這篇文章介紹了PHP的構(gòu)造方法,析構(gòu)方法和this關(guān)鍵字,有需要的朋友可以參考一下2013-10-10功能強(qiáng)大的PHP POST提交數(shù)據(jù)類
這篇文章主要為大家詳細(xì)介紹了功能強(qiáng)大的PHP POST提交數(shù)據(jù)類,代碼簡(jiǎn)潔且具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-07-07php microtime獲取浮點(diǎn)的時(shí)間戳
看到別人的源碼中用microtime(true),查了下手冊(cè),原來(lái)從PHP 5.0.0 開始,microtime增加了這個(gè)參數(shù)。2010-02-02PHP中通過(guò)fopen()函數(shù)訪問(wèn)遠(yuǎn)程文件示例
這篇文章主要介紹了PHP中通過(guò)fopen()函數(shù)訪問(wèn)遠(yuǎn)程文件示例,本文講解了fopen函數(shù)的作用、使用它需要的配置問(wèn)題、超時(shí)問(wèn)題等內(nèi)容,并給出了代碼實(shí)例,需要的朋友可以參考下2014-11-11也談php網(wǎng)站在線人數(shù)統(tǒng)計(jì)
db層: db_online.PHP //該函數(shù)使用戶自己在線,并且檢查其他用戶的在線情況2008-04-04