php修改指定文件后缀的方法

yipeiwu_com6年前PHP代码库

因项目需求,需要将asp后缀的修改成php,因懒于一个个修改。又觉得php跟Qt一样都是高级语言了,一般高级语言都有提供对获得的内容进行增删改查的函数。经过一番资料查找与代码测试,总结出了PHP修改指定文件后缀的方法,分享给大家。

目标:将当前目录下的asp后缀改成php,而不影响其它“后缀格式的文件”,而且只是针对“当前文件夹”,对当前文件夹内包含的文件夹的文件不进行修改。

具体功能代码如下:

<?php 
function foreachDir($dirname)
{ 
if(!is_dir($dirname))
{
  echo "{$dirname} not effective dir";
  exit();
}
 $handle=opendir($dirname); //打开目录

while (($file = readdir($handle))!==false) //读取目录
{ 
 if($file!="." && $file!='..')
 { 
  if(is_dir($dirname.$file))
 { 
  echo $dirname.$file."<br/>"; 
  //foreachDir($dirname.$file); //如果注释号去掉,将会递归修改文件夹内的文件夹文件
 }
  else
 { 
  echo "--".$dirname."/".$file."<br/>"; 
  $temp = substr($file, strrpos($file, '.')+1); //获取后缀格式
   if ($temp == "asp") 
   {
  $pos = strripos($file,'.'); //获取到文件名的位置
  $filename = substr($file,0,$pos); //获取文件名
  rename($dirname.'/'.$file,$dirname.'/'.$filename.'.php'); //替换为php后缀格式。
   }
 } 
 } 
 } 
} 
foreachDir('../traverseMendFilename');
?>

感兴趣的朋友可以测试运行并扩展完善本文实例,相信会对大家PHP程序设计的学习有所帮助。

另外:附上获取文件扩展名的四种方法供大家参考。

相关文章

php设计模式 Decorator(装饰模式)

复制代码 代码如下: <?php /** * 装饰模式 * * 动态的给一个对象添加一些额外的职责,就扩展功能而言比生成子类方式更为灵活 */ header("Content-ty...

PHP获取访问页面HTTP状态码的实现代码

方法一 $header_info=get_headers('//www.jb51.net/'); echo $header_info[0]; //耗时 0.67~0.78 方法二...

php 解压rar文件及zip文件的方法

对于zip文件网上的例子很多,rar文件解压php没有直接支持,可以用pecl到http://pecl.php.net/package/rar 下载对应版本的 非线程安全的dll然后扔到...

深入解析PHP中的(伪)多线程与多进程

(伪)多线程:借助外力利用WEB服务器本身的多线程来处理,从WEB服务器多次调用我们需要实现多线程的程序。QUOTE:我们知道PHP本身是不支持多线程的, 但是我们的WEB服务器是支持多...

PHP中redis的用法深入解析

PHP中redis的用法深入解析

redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)和zset(有序集合...