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 相关文章推荐
最小化数据传输――在客户端存储数据
Oct 09 PHP
phpMyadmin 用户权限中英对照
Apr 02 PHP
一些被忽视的PHP函数(简单整理)
Apr 30 PHP
php学习之流程控制实现代码
Jun 09 PHP
PHP imagegrabscreen和imagegrabwindow(截取网站缩略图)的实例代码
Nov 07 PHP
windwos下使用php连接oracle数据库的过程分享
May 26 PHP
php连接与操作PostgreSQL数据库的方法
Dec 25 PHP
Yii2 rbac权限控制之菜单menu实例教程
Apr 28 PHP
php.ini中date.timezone设置详解
Nov 20 PHP
php获取字符串前几位的实例(substr返回字符串的子串用法)
Mar 08 PHP
PHP 获取客户端 IP 地址的方法实例代码
Nov 11 PHP
确保Laravel网站不会被嵌入到其他站点中的方法
Oct 18 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上传文件的增强函数
2010/07/21 PHP
PHP5.4中json_encode中文转码的变化小结
2013/01/30 PHP
PHP函数http_build_query使用详解
2014/08/20 PHP
谈谈从phpinfo中能获取哪些值得注意的信息
2017/03/28 PHP
ejs v9 javascript模板系统
2012/03/21 Javascript
三种动态加载js的jquery实例代码另附去除js方法
2014/04/30 Javascript
Jquery中Event对象属性小结
2015/02/27 Javascript
js判断价格,必须为数字且不能为负数的实现方法
2016/10/07 Javascript
原生js实现放大镜效果
2017/01/11 Javascript
Canvas + JavaScript 制作图片粒子效果
2017/02/08 Javascript
JS控制鼠标拒绝点击某一按钮的实例
2017/12/29 Javascript
Vue中使用webpack别名的方法实例详解
2018/06/19 Javascript
React Native基础入门之初步使用Flexbox布局
2018/07/02 Javascript
微信小程序之事件交互操作实例分析
2018/12/03 Javascript
在mpvue框架中使用Vant WeappUI组件库的注意事项【推进】
2019/06/09 Javascript
jquery中为什么能用$操作
2019/06/18 jQuery
微信提示 在浏览器打开 效果实现过程解析
2019/09/10 Javascript
在layui框架中select下拉框监听更改事件的例子
2019/09/20 Javascript
js实现磁性吸附的示例
2020/10/26 Javascript
python字符串的常用操作方法小结
2016/05/21 Python
简单易懂的python环境安装教程
2017/07/13 Python
python通过txt文件批量安装依赖包的实现步骤
2019/08/13 Python
解决pycharm导入numpy包的和使用时报错:RuntimeError: The current Numpy installation (‘D:\\python3.6\\lib\\site-packa的问题
2020/12/08 Python
检测用户浏览器是否支持CSS3的方法
2009/08/29 HTML / CSS
uniapp+Html5端实现PC端适配
2020/07/15 HTML / CSS
智能室内花园:Click & Grow
2021/01/29 全球购物
校园安全广播稿
2014/02/08 职场文书
班主任工作经验交流材料
2014/05/13 职场文书
国际金融专业自荐信
2014/07/05 职场文书
德育标兵事迹材料
2014/08/24 职场文书
2014年教师党员自我评议
2014/09/19 职场文书
发展党员工作情况汇报
2014/10/28 职场文书
2015年春训学习心得体会范文
2015/03/09 职场文书
Java中常用解析工具jackson及fastjson的使用
2021/06/28 Java/Android
Java服务调用RestTemplate与HttpClient的使用详解
2022/06/21 Java/Android
Spring Boot 的创建和运行示例代码详解
2022/07/23 Java/Android