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程序设计的学习有所帮助。

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

(0)

相关推荐

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

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

  • PHP实现更改hosts文件的方法示例

    本文实例讲述了PHP实现更改hosts文件的方法.分享给大家供大家参考,具体如下: 有这样一个需求,我有多个网址希望在不同的时候对应不同的 ip,如果一个个配 hosts,这工作显得有些繁琐.写了如下脚本来批量更改. <?php define('HOST_FILE', 'C:\Windows\System32\drivers\etc\hosts'); $hm = new HostManage(HOST_FILE); $env = $argv[1]; if (empty($env)) { $hm-

  • php.ini修改php上传文件大小限制的方法详解

    打开php.ini,首先找到file_uploads = on ;是否允许通过HTTP上传文件的开关.默认为ON即是开upload_tmp_dir ;文件上传至服务器上存储临时文件的地方,如果没指定就会用系统默认的临时文件夹upload_max_filesize = 8m ;望文生意,即允许上传文件大小的最大值.默认为2Mpost_max_size = 8m ;指通过表单POST给PHP的所能接收的最大值,包括表单里的所有值.默认为8M一般地,设置好上述四个参数后,上传<=8M的文件是不成问题,

  • php更改目录及子目录下所有的文件后缀的代码

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

  • 修改apache配置文件去除thinkphp url中的index.php

    例如你的原路径是 http://localhost/test/index.php/index/add那么现在的地址是 http://localhost/test/index/add如何去掉index.php呢? 1.httpd.conf配置文件中加载了mod_rewrite.so模块  //在APACHE里面去配置 复制代码 代码如下: #LoadModule rewrite_module modules/mod_rewrite.so把前面的警号去掉 2.AllowOverride None 讲

  • php中配置文件操作 如config.php文件的读取修改等操作

    复制代码 代码如下: <?php $name="admin";//kkkk $bb='234'; $db=4561321; $kkk="admin"; ?> 函数定义: 配置文件数据值获取:function getconfig($file, $ini, $type="string") 配置文件数据项更新:function updateconfig($file, $ini, $value,$type="string"

  • PHP实现抓取Google IP并自动修改hosts文件

    无聊中居然又找到个php版本的抓取google hosts的文件,试了下还可以用,ping了下ip,延迟也不是很高,网页打开测试了下速度也很快,大家有兴趣的话可以试试. 自动更新hosts文件, 不覆盖已存在的记录,方便使用,不用每次都 复制->打开hosts文件->粘贴. php文件: <?php /** * 免翻墙上google * @author 自娱自乐自逍遥 <wapznw@gmail.com> * Date: 2015/2/6 * Time: 11:42 */ d

  • php读取excel文件示例分享(更新修改excel)

    复制代码 代码如下: //模板存放目录$dir = $DOCUMENT_ROOT.'/backoffice/admin/oemcheck/'; $templateName = '1.xlsx';$outputFileName = '模板.xlsx';$txt='test'; //实例化Excel读取类$PHPReader = new PHPExcel_Reader_Excel2007();if(!$PHPReader->canRead($dir.$templateName)){ $PHPRead

  • 修改php.ini不生效问题解决方法(上传大于8M的文件)

    摘要:上传大于8M的文件需要修改php的配置才可以生效.但是我在网上找了一堆修改配置的资料,但是自己修改之后就是没有生效. 解决方法: 修改php.ini这个选项,网上有很多的教程,可以随便搜. 1.先用root账号,登录到nobody的账户. 2.然后用whereis php命令查看,php.ini所在的位置,修改这个php.ini的文件就可以了. 3.最后重启apache,就可以生效了. 这里的nobody账户就是apache使用的账户,权限很低. 这里主要注意的问题就是你修改的配置文件必须

  • php Rename 更改文件、文件夹名称

    命令格式为: bool rename ( string oldname, string newname [, resource context] ) 下面演示rename的具体应用: 文件位置如图:目的:1.把cache.txt 更名为rename.txt; 2.将cache2.txt更名为cache3.txt 3.将html目录 更名为 cache 4.将file目录转移到html目录下(可以实现更名) 代码实现(有错误): 复制代码 代码如下: <?php $file = "html/

随机推荐