php遍历一个目录 并重命名

本文介绍了两种使用PHP实现目录递归的方法。一种是通过dir()函数返回目录对象,并利用此对象读取目录;另一种则是使用readdir()函数来读取目录内容。这两种方法均实现了对目录及其子目录下所有文件的遍历。
/**********************
一个简单的目录递归函数
第一种实现办法:用dir返回对象
***********************/
function tree($directory) 
{ 
 $mydir = dir($directory); 
 echo "<ul>\n"; 
        $i=1;
 while($file = $mydir->read())
 { 
  if((is_dir("$directory/$file")) AND ($file!=".") AND ($file!="..")) 
  {
                    
   echo "<li><font color=\"#ff00cc\"><b>$file</b></font></li>\n"; 
   tree("$directory/$file"); 
  } 
  else {
                    if(($file!=".") AND ($file!="..")) {
                        rename("/wamp5_3_2/www/m2_old/tietu/".$file, "/wamp5_3_2/www/m2_old/tietu/".$i.'.png');
                    $i++; 
                    }
                   
                    echo "<li>$file</li>\n"; 
                }
 } 
 echo "</ul>\n"; 
 $mydir->close(); 
} 
//开始运行

echo "<h2>目录为粉红色</h2><br>\n"; 
tree("/wamp5_3_2/www/m2_old/tietu"); 
exit;
/***********************
第二种实现办法:用readdir()函数
************************/
function listDir($dir)
{
 if(is_dir($dir))
    {
      if ($dh = opendir($dir)) 
  {
         while (($file = readdir($dh)) !== false)
   {
        if((is_dir($dir."/".$file)) && $file!="." && $file!="..")
    {
         echo "<b><font color='red'>文件名:</font></b>",$file,"<br><hr>";
         listDir($dir."/".$file."/");
        }
    else
    {
            if($file!="." && $file!="..")
     {
             echo $file."<br>";
          }
        }
         }
         closedir($dh);
      }
    }
}
//开始运行
listDir("");

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值