重命名成功,但是重命名文件夹耗时过长,cpu占用过大占用了40%左右的内存(点击重命名按钮时,360加速球从45%增加到80%以上)
elseif($act == "renameFolder"){
//echo $dirname;
//完成文件夹重命名
$str = <<<EOF
<form action="index.php?act=doRenameFolder" method="post">
请填写新文件夹名:<input type="text" name="newname" placeholder="重命名文件夹"/><br />
<input type="hidden" name="path" value="$path"/>
<input type="hidden" name="dirname" value="{$dirname}"/>
<input type="submit" value="重命名文件夹"/>
</form>
EOF;
echo $str;
}elseif($act == "doRenameFolder"){
$newname = $_REQUEST['newname'];
$mes = renameFolder($dirname,$path."/".$newname);
//alertMes($mes,$redirect);
}
---------------------------------------------
<tr>
<td><?php echo $i;?></td>
<td><?php echo $val;?></td>
<td><?php $src=filetype($p)=="file"?"file_ico.png":"folder_ico.png";?><img src="images/<?php echo $src;?>" alt="" title="folder"/></td>
<!-- <td><?php $sum = 0; echo transByte(dirSize($p));?></td> -->
<td><?php $src=is_readable($p) ? "correct.png":"error.png";?><img src="images/<?php echo $src;?>" alt=""/></td>
<td><?php $src=is_writable($p) ? "correct.png":"error.png";?><img src="images/<?php echo $src;?>" alt=""/></td>
<td><?php $src=is_executable($p) ? "correct.png":"error.png";?><img src="images/<?php echo $src;?>" alt=""/></td>
<td><?php echo date('Y-m-d H:i:s',filectime($p));?></td>
<td><?php echo date('Y-m-d H:i:s',filemtime($p));?></td>
<td><?php echo date('Y-m-d H:i:s',fileatime($p));?></td>
<td>
<a href="index.php?path=<?php echo $p;?>"><img class="small" src="images/show.png" alt="" title="查看"/></a>
<a href="index.php?act=renameFolder&path=<?php echo $path;?>&dirname=<?php echo $p;?>"><img class="small" src="images/rename.png" alt="" title="重命名"/></a>
<a href="index.php?act=copyFolder&path=<?php echo $path;?>&dirname=<?php echo $p;?>"><img class="small" src="images/copy.png" alt="" title="复制"/></a>
<a href="index.php?act=cutFolder&path=<?php echo $path;?>&dirname=<?php echo $p;?>"><img class="small" src="images/cut.png" alt="" title="剪切"/></a>
<a href="#" onclick="delFile('<?php echo $p;?>')"><img class="small" src="images/delete.png" alt="" title="删除"/></a>
</td>
</tr>
---------------------------------------------
function renameFolder($oldname,$newname){
//检测文件夹名称的合法性
if(checkFilename(basename($newname))){
//检测当前目录下是否存在同名文件夹
if(!file_exists($newname)){
if(rename($oldname,$newname)){
$mes = "重命名成功";
}else{
$mes = "重命名失败";
}
}else{
$mes = "存在同名文件夹";
}
}else{
$mes = "非法文件夹名称";
}
return $mes;
}即使是把
<!-- <td><?php $sum = 0; echo transByte(dirSize($p));?></td> -->
这条代码注释掉,也还是没有解决