首頁 >php教程 >php手册 >PHP修改文件名后缀的方法

PHP修改文件名后缀的方法

WBOY
WBOY原創
2016-06-13 09:38:511274瀏覽

有这样一个需求,改变当前目录下指定类型的文件类型。本来想要用批处理来做这个,结果没找到合适。就自己去查了下资料,用PHP来处理一下。不是很经常处理文件,所以对遍历目录还不是很熟悉,找了一下资料,自己修改一下。

代码主要的目的是批量更改文件后缀.由于淘宝数据包图片类型的不同,所以要改一下适合的。

<?php
	//本文件和要改变的目录下的文件 放在同一文件夹下
	define("STA",".gif");	//原来的文件格式
	define("END",".jpeg2000");	//要改变的格式
	$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;
	}
?>
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn