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
在任意字符集下正常显示网页的方法二(续)
Apr 01 PHP
请php正则走开
Mar 15 PHP
php 求质素(素数) 的实现代码
Apr 12 PHP
php显示时间常用方法小结
Jun 05 PHP
PHP通过反射动态加载第三方类和获得类源码的实例
Nov 27 PHP
php array_udiff_assoc 计算两个数组的差集实例
Nov 12 PHP
PHP基于面向对象实现的留言本功能实例
Apr 04 PHP
laravel 验证错误信息到 blade模板的方法
Sep 29 PHP
Laravel-admin之修改操作日志的方法
Sep 30 PHP
PHP实现页面静态化深入讲解
Mar 04 PHP
详解PHP服务器如何在有限的资源里最大提升并发能力
May 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中使用Oracle数据库(4)
2006/10/09 PHP
编写PHP脚本过滤用户上传的图片
2015/07/03 PHP
WordPress中访客登陆实现邮件提醒的PHP脚本实例分享
2015/12/14 PHP
PHP图像处理技术实例总结【绘图、水印、验证码、图像压缩】
2018/12/08 PHP
浅析PHP中的 inet_pton 网络函数
2019/12/16 PHP
另类调用flash无须激活的方法
2006/12/27 Javascript
jQuery toggle()设置CSS样式
2009/11/05 Javascript
Iframe实现跨浏览器自适应高度解决方法
2014/09/02 Javascript
jQuery插件Validation快速完成表单验证的方式
2016/07/28 Javascript
AngularJs  Understanding Angular Templates
2016/09/02 Javascript
JavaScript 计算笛卡尔积实例详解
2016/12/02 Javascript
AngularJS表单基本操作
2017/01/09 Javascript
Angular.js实现多个checkbox只能选择一个的方法示例
2017/02/24 Javascript
js装饰设计模式学习心得
2018/02/17 Javascript
js的各种数据类型判断的介绍
2019/01/19 Javascript
ES6知识点整理之对象解构赋值应用示例
2019/04/17 Javascript
jQuery操作cookie的示例代码
2019/06/05 jQuery
详解JavaScript 事件流
2020/09/02 Javascript
[04:45]上海特级锦标赛主赛事第三日TOP10
2016/03/05 DOTA
[01:11]回顾历届DOTA2国际邀请赛中国区预选赛
2017/06/26 DOTA
用Python制作检测Linux运行信息的工具的教程
2015/04/01 Python
Python实现读取字符串按列分配后按行输出示例
2018/04/17 Python
python调用staf自动化框架的方法
2018/12/26 Python
对python dataframe逻辑取值的方法详解
2019/01/30 Python
Python实现的多进程拷贝文件并显示百分比功能示例
2019/04/09 Python
利用 Flask 动态展示 Pyecharts 图表数据方法小结
2019/09/04 Python
python 如何将数据写入本地txt文本文件的实现方法
2019/09/11 Python
Python中低维数组填充高维数组的实现
2019/12/02 Python
Elasticsearch py客户端库安装及使用方法解析
2020/09/14 Python
如何利用python读取micaps文件详解
2020/10/18 Python
分享CSS3中必须要知道的10个顶级命令
2012/04/26 HTML / CSS
计算机应用应届生求职信
2014/07/12 职场文书
调解书格式范本
2015/05/20 职场文书
如何使用vue3打造一个物料库
2021/05/08 Vue.js
Python 语言实现六大查找算法
2021/06/30 Python
解决ubuntu安装软件时,status-code=409报错的问题
2022/12/24 Servers