php更改目录及子目录下所有的文件后缀的代码


Posted in PHP onSeptember 24, 2010

不是很经常处理文件,所以对遍历目录还不是很熟悉,找了一下资料,自己修改一下。
让大家看看是否需要完善的
代码主要的目的是 批量更改 文件后缀 由于淘宝数据包图片类型的不同 所以要改一下适合的。

<?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; 
} ?>
PHP 相关文章推荐
PHP编程网上资源导航
Oct 09 PHP
php file_get_contents抓取Gzip网页乱码的三种解决方法
Nov 12 PHP
PHP中魔术变量__METHOD__与__FUNCTION__的区别
Sep 29 PHP
php建立Ftp连接的方法
Mar 07 PHP
PHP随机生成唯一HASH值自定义函数
Apr 20 PHP
PHP Hash算法:Times33算法代码实例
May 13 PHP
PHP魔术方法以及关于独立实例与相连实例的全面讲解
Oct 18 PHP
php 计算两个时间相差的天数、小时数、分钟数、秒数详解及实例代码
Nov 09 PHP
PHP 500报错的快速解决方法
Dec 14 PHP
Yii2.0 RESTful API 基础配置教程详解
Dec 26 PHP
原生PHP实现导出csv格式Excel文件的方法示例【附源码下载】
Mar 07 PHP
PHP应用跨时区功能的实现方法
Mar 21 PHP
比较全面的PHP数组的使用方法小结
Sep 23 #PHP
PHP之COOKIE支持详解
Sep 20 #PHP
PHPCMS的使用小结
Sep 20 #PHP
PHP中的MYSQL常用函数(php下操作数据库必备)
Sep 12 #PHP
zen cart新进商品的随机排序修改方法
Sep 10 #PHP
php表单转换textarea换行符的方法
Sep 10 #PHP
PHPnow安装服务[apache_pn]失败的问题的解决方法
Sep 10 #PHP
You might like
发挥语言的威力--融合PHP与ASP
2006/10/09 PHP
js直接编辑当前cookie的脚本
2008/09/14 Javascript
jquery 表单下所有元素的隐藏
2009/07/25 Javascript
JQuery 弹出框定位实现方法
2010/12/02 Javascript
关于JavaScript对象的动态选择及遍历对象
2014/03/10 Javascript
使用jquery写个更改表格行顺序的小功能
2014/04/29 Javascript
node+express+jade制作简单网站指南
2014/11/26 Javascript
JQuery显示隐藏页面元素的方法总结
2015/04/16 Javascript
JavaScript前端开发之实现二进制读写操作
2015/11/04 Javascript
jQuery代码实现表格中点击相应行变色功能
2016/05/09 Javascript
JavaScript内存泄漏的处理方式
2017/11/20 Javascript
vue实现简单loading进度条
2018/06/06 Javascript
微信小程序实现比较功能的方法汇总(五种方法)
2020/03/07 Javascript
vue二选一tab栏切换新做法实现
2021/01/19 Vue.js
一个超级简单的python web程序
2014/09/11 Python
python实现对一个完整url进行分割的方法
2015/04/29 Python
python函数中return后的语句一定不会执行吗?
2017/07/06 Python
儿童编程python入门
2018/05/08 Python
浅谈python的输入输出,注释,基本数据类型
2019/04/02 Python
Python GUI编程完整示例
2019/04/04 Python
python读写csv文件实例代码
2019/07/05 Python
详解Django定时任务模块设计与实践
2019/07/24 Python
python如何实现不用装饰器实现登陆器小程序
2019/12/14 Python
Tensorflow累加的实现案例
2020/02/05 Python
python GUI库图形界面开发之PyQt5切换按钮控件QPushButton详细使用方法与实例
2020/02/28 Python
Python内置函数及功能简介汇总
2020/10/13 Python
5个你不知道的HTML5的接口介绍
2013/08/07 HTML / CSS
html5如何在Canvas中实现自定义路径动画示例
2017/09/18 HTML / CSS
大学生就业推荐信范文
2013/11/29 职场文书
促销活动方案模板
2014/02/24 职场文书
内勤岗位职责
2015/02/10 职场文书
文明礼仪倡议书
2015/04/28 职场文书
单独二胎证明
2015/06/24 职场文书
配置Kubernetes外网访问集群
2022/03/31 Servers
SpringBoot整合minio快速入门教程(代码示例)
2022/04/03 Java/Android
Windows server 2012 NTP时间同步的实现
2022/06/25 Servers