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脚本的10个技巧(3)
Oct 09 PHP
Zend的AutoLoad机制介绍
Sep 27 PHP
php对二维数组进行排序的简单实例
Dec 19 PHP
在PHP中运行Linux命令并启动SSH服务的例子
Jun 12 PHP
php使用file函数、fseek函数读取大文件效率对比分析
Nov 04 PHP
利用php生成验证码
Feb 23 PHP
YII2框架中使用yii.js实现的post请求
Apr 09 PHP
PHP curl 或 file_get_contents 获取需要授权页面的方法
May 05 PHP
PHP的mysqli_select_db()函数讲解
Jan 23 PHP
PHP中抽象类,接口功能、定义方法示例
Feb 26 PHP
PHP读取Excel内的图片(phpspreadsheet和PHPExcel扩展库)
Nov 19 PHP
laravel框架模型和数据库基础操作实例详解
Jan 25 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接口中interface存在的意义
2013/06/27 PHP
PHP实现把数字ID转字母ID
2013/08/12 PHP
php简单计算页面加载时间的方法
2015/06/19 PHP
PHP常用工具函数小结【移除XSS攻击、UTF8与GBK编码转换等】
2019/04/27 PHP
JavaScript的面向对象(一)
2006/11/09 Javascript
基于jquery的跟随屏幕滚动代码
2012/07/24 Javascript
js怎么覆盖原有方法实现重写
2014/09/04 Javascript
JavaScript中的立即执行函数表达式介绍
2015/03/15 Javascript
AngularJS使用自定义指令替代ng-repeat的方法
2016/09/17 Javascript
微信小程序 Page()函数详解
2016/10/17 Javascript
使用vue.js编写蓝色拼图小游戏
2017/03/17 Javascript
移动端利用H5实现压缩图片上传功能
2017/03/29 Javascript
解决bootstrap下拉菜单点击立即隐藏bug的方法
2017/06/13 Javascript
微信小程序 开发MAP(地图)实例详解
2017/06/27 Javascript
vue+element 模态框表格形式的可编辑表单实现
2019/06/07 Javascript
JavaScript实现拖拽盒子效果
2020/02/06 Javascript
40行代码把Vue3的响应式集成进React做状态管理
2020/05/20 Javascript
[02:33]DOTA2亚洲邀请赛趣味视频之吐真话筒
2018/03/31 DOTA
[02:21]2018完美盛典章节片——初心
2018/12/17 DOTA
win10下python3.5.2和tensorflow安装环境搭建教程
2018/09/19 Python
解决Python selenium get页面很慢时的问题
2019/01/30 Python
详细介绍pandas的DataFrame的append方法使用
2019/07/31 Python
Pytorch中accuracy和loss的计算知识点总结
2019/09/10 Python
解决django FileFIELD的编码问题
2020/03/30 Python
Python实现一个简单的毕业生信息管理系统的示例代码
2020/06/08 Python
Python实现爬取并分析电商评论
2020/06/19 Python
Python 实现国产SM3加密算法的示例代码
2020/09/21 Python
python编写扎金花小程序的实例代码
2021/02/23 Python
阿迪达斯荷兰官方网站:adidas荷兰
2018/03/16 全球购物
JSF面试题:Jsf中的核心类用那些?有什么作用?LiftCycle六大生命周期是什么?
2014/07/17 面试题
宣传普通话标语
2014/06/27 职场文书
土建专业毕业生自荐书
2014/07/04 职场文书
端午节活动总结
2014/08/26 职场文书
大学新生军训自我鉴定范文
2014/09/13 职场文书
党的群众路线教育实践活动查摆问题及整改措施
2014/10/10 职场文书
python DataFrame中stack()方法、unstack()方法和pivot()方法浅析
2022/04/06 Python