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

?>

时间: 2024-11-03 08:20:44

php更改目录及子目录下所有的文件后缀的代码_php技巧的相关文章

php更改目录及子目录下所有的文件后缀扩展名的代码_php技巧

不是很经常处理文件,所以对遍历目录还不是很熟悉,找了一下资料,自己修改一下. 让大家看看是否需要完善的 代码主要的目的是 批量更改 文件后缀 由于淘宝数据包图片类型的不同 所以要改一下适合的. 复制代码 代码如下: <?php //本文件和要改变的目录下的文件 放在同一文件夹下 define("STA",".gif");//原来的文件格式 define("END",".jpg");//要改变的格式 $dir="

PHP 删除一个目录及目录下的所有文件的函数代码_php技巧

复制代码 代码如下: /***** *@dir - Directory to destroy *@virtual[optional]- whether a virtual directory */ function destroyDir($dir, $virtual = false) { $ds = DIRECTORY_SEPARATOR; $dir = $virtual ? realpath($dir) : $dir; $dir = substr($dir, -1) == $ds ? subs

遍历指定目录下的所有目录和文件的php代码_php技巧

复制代码 代码如下: <?php function listFiles($path){ $result = array(); foreach(glob($path.'\\'."*") as $item){ $result[strtolower($item)] = $item; if(is_dir($item)){ $result += listFiles($item); } } return $result; } $path = 'E:\\web\\dianle'; foreac

php删除与复制文件夹及其文件夹下所有文件的实现代码_php技巧

复制代码 代码如下: <?php  /*复制xCopy函数用法:      *   xCopy("feiy","feiy2",1):拷贝feiy下的文件到   feiy2,包括子目录      *   xCopy("feiy","feiy2",0):拷贝feiy下的文件到   feiy2,不包括子目录      *参数说明:      *   $source:源目录名      *   $destination:目的目录

php下使用SMTP发邮件的代码_php技巧

最近一个项目需要用到SMTP发送邮件,之前的库类不存在了,又不喜欢安装pear或者使用pear的net/smtp类,感觉太复杂了.就直接从discuz中抽取出核心稍微修改了下.    从协议分析网上,查找到SMTP协议的命令和应答,SMTP协议在发送SMTP和接收SMTP之间的会话是靠发送SMTP的SMTP命令和接收SMTP反馈的应答来完成的.常用的命令如下:    HELLO<domain><CRLF>识别发送方到接收SMTP的一个HELLO命令    MAIL FROM:<

php删除文件夹及其文件夹下所有文件的函数代码_php技巧

复制代码 代码如下: <? function deldir($dir) { //先删除目录下的文件: $dh=opendir($dir); while ($file=readdir($dh)) { if($file!="." && $file!="..") { $fullpath=$dir."/".$file; if(!is_dir($fullpath)) { unlink($fullpath); } else { deld

php 删除目录下N分钟前创建的所有文件的实现代码_php技巧

复制代码 代码如下: <?php//delfile("upload",10);function delfile($dir,$n) //删除当DIR路径下N分钟前创建的所有文件;{if(is_dir($dir))  { if($dh=opendir($dir))   {    while (false !== ($file = readdir($dh)))     {     if($file!="." && $file!="..&qu

php下获取http状态的实现代码_php技巧

逐风整理了两种方式,大家可以自行参考/使用: 复制代码 代码如下: #方式一$ch = curl_init('http://www.jb51.net');curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);curl_exec($ch);echo curl_getinfo($ch, CURLINFO_HTTP_CODE); // 200curl_close($ch); 方式二 复制代码 代码如下: print_r(    get_headers('http://

php下实现折线图效果的代码_php技巧

<?php   Class ImageReport{  var $X;//图片大小X轴  var $Y;//图片大小Y轴  var $R;//背影色R值  var $G;//...G.  var $B;//...B.  var $TRANSPARENT;//是否透明1或0  var $IMAGE;//图片对像  //-------------------  var $ARRAYSPLIT;//指定用于分隔数值的符号  var $ITEMARRAY;//数值  var $REPORTTYPE;//