手机
当前位置:查字典教程网 >编程开发 >php教程 >php更改目录及子目录下所有的文件后缀扩展名的代码
php更改目录及子目录下所有的文件后缀扩展名的代码
摘要:不是很经常处理文件,所以对遍历目录还不是很熟悉,找了一下资料,自己修改一下。让大家看看是否需要完善的代码主要的目的是批量更改文件后缀由于淘宝...

不是很经常处理文件,所以对遍历目录还不是很熟悉,找了一下资料,自己修改一下。

让大家看看是否需要完善的

代码主要的目的是 批量更改 文件后缀 由于淘宝数据包图片类型的不同 所以要改一下适合的。

复制代码 代码如下:

<?php

//本文件和要改变的目录下的文件 放在同一文件夹下

define("STA",".gif");//原来的文件格式

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);

}

}

//获取目录下所有文件的函数

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;

}

?>

用字符串替换不太严谨,万一名称中就有gif程序就有异常。

建议使用PHP函数pathinfo(),循环段可修改为

复制代码 代码如下:

foreach($arr as $t)

{

$path_parts = pathinfo($t);

if($path_parts["extension"] == STA)

{

rename($t,$path_parts["dirname"]."/".basename($t,STA).END);

}

}

【php更改目录及子目录下所有的文件后缀扩展名的代码】相关文章:

php curl 上传文件代码实例

php实现比较两个字符串日期大小的方法

php实现根据IP地址获取其所在省市的方法

php编写批量生成不重复的卡号密码代码

一个php作的文本留言本的例子(四)

一个php作的文本留言本的例子(六)

php eval函数一句话木马代码

php将字符串随机分割成不同长度数组的方法

一个php作的文本留言本的例子(三)

递归列出所有文件和目录

精品推荐
分类导航