微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php visitFile()遍历指定文件夹函数

注:visitFile()有少量修改
<div class="codetitle"><a style="CURSOR: pointer" data="70653" class="copybut" id="copybut70653" onclick="doCopy('code70653')"> 代码如下:

<div class="codebody" id="code70653">
<?
// 查看指定文件夹的文件
$fileList = array();
function visitFile($path)
{
global $fileList;
$path = str_replace("\","/",$path);
$fdir = dir($path);
while (($file = $fdir->read()) !== false)
{
if($file == '.' || $file == '..'){ continue; }
$pathSub = preg_replace("/{2,}",$path."/".$file); // 替换多个反斜杠
$fileList[] = is_dir($pathSub) ? $pathSub."/" : $pathSub;
if(is_dir($pathSub)){ visitFile($pathSub); }
}
$fdir->close();
return $fileList;
}
?>

<form method="get">
<?
$path = str_replace("\",$path);
$path = preg_replace("/{2,$path);
?>
路径:<input type="text" name="path" id="path" value="<?=$path;?>"/>

  • 磁盘根目录 /

  • 网络本地 ./PHPMyAdmin

  • 本地磁盘 file://C: 或者 C:






  • <?
    if(!empty($path)){
    $path = preg_replace("
    /{2,$path);
    $files = visitFile($path);
    switch(strtolower($_GET["action"]))
    {
    case "view":
    foreach($files as $key => $value)
    {
    printf("No.%4d·%s
    \r\n",$key+1,$value);
    }
    break;
    case "delete":
    $faileFiles = array();
    foreach(array_reverse($files) as $value)
    {
    if(!unlink($value))
    {
    array_push($faileFiles,$value);
    }
    }
    if(!unlink($path)) { array_push($faileFiles,$path); }
    if(count($faileFiles) > 0)
    {
    printf("

    删除失败文件(%d):

    \r\n",count($faileFiles));
    foreach( $faileFiles as $key => $value)
    {
    printf("No.%4d·%s
    \r\n",$value);
    }
    }
    break;
    }
    }
    ?>

    版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

    相关推荐