欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

php实现WEB在线文件管理器

程序员文章站 2022-04-05 23:05:17
1、效果图 功能包括: 文件夹:创建文件夹、查看文件夹、复制文件夹、剪切文件夹、删除文件夹、重命名文件夹 文件:查看文件、创建文件、编辑文件、复制文件、剪切文件、删除文件、重命名文件、下载文件、上传文件 2、目录结构预览 3、目录操作函数 dir.func.php

1、效果图

功能包括:

文件夹:创建文件夹、查看文件夹、复制文件夹、剪切文件夹、删除文件夹、重命名文件夹

文件:查看文件、创建文件、编辑文件、复制文件、剪切文件、删除文件、重命名文件、下载文件、上传文件

php实现WEB在线文件管理器

2、目录结构预览

php实现WEB在线文件管理器

 

 

3、目录操作函数 dir.func.php

<?php 

// 目录操作函数集合

//打开指定目录
/**
 * 遍历目录函数,只读取目录中的最外层的内容
 * @param string $path
 * @return array
 */
function readdirectory($path) {
    $handle = opendir ( $path );
    while ( ($item = readdir ( $handle )) !== false ) {
        //.和..这2个特殊目录
        if ($item != "." && $item != "..") {
            if (is_file ( $path . "/" . $item )) {
                $arr ['file'] [] = $item;
            }
            if (is_dir ( $path . "/" . $item )) {
                $arr ['dir'] [] = $item;
            }
        
        }
    }
    closedir ( $handle );
    return $arr;
}
//$path="file";
//print_r(readdirectory($path));

/**
 * 得到文件夹大小
 * @param string $path
 * @return int 
 */
function dirsize($path){
    $sum=0;
    global $sum;
    $handle=opendir($path);
    while(($item=readdir($handle))!==false){
        if($item!="."&&$item!=".."){
            if(is_file($path."/".$item)){
                $sum+=filesize($path."/".$item);
            }
            if(is_dir($path."/".$item)){
                $func=__function__;
                $func($path."/".$item);
            }
        }
        
    }
    closedir($handle);
    return $sum;
}
//$path="file";
//echo dirsize($path);

function createfolder($dirname){
    //检测文件夹名称的合法性
    if(checkfilename(basename($dirname))){
        //当前目录下是否存在同名文件夹名称
        if(!file_exists($dirname)){
            if(mkdir($dirname,0777,true)){
                $mes="文件夹创建成功";
            }else{
                $mes="文件夹创建失败";
            }
        }else{
            $mes="存在相同文件夹名称";
        }
    }else{
        $mes="非法文件夹名称";
    }
    return $mes;
}
/**
 * 重命名文件夹
 * @param string $oldname
 * @param string $newname
 * @return string
 */
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;
}

function copyfolder($src,$dst){
    //echo $src,"---",$dst."----";
    if(!file_exists($dst)){
        mkdir($dst,0777,true);
    }
    $handle=opendir($src);
    while(($item=readdir($handle))!==false){
        if($item!="."&&$item!=".."){
            if(is_file($src."/".$item)){
                copy($src."/".$item,$dst."/".$item);
            }
            if(is_dir($src."/".$item)){
                $func=__function__;
                $func($src."/".$item,$dst."/".$item);
            }
        }
    }
    closedir($handle);
    return "复制成功";
    
}

/**
 * 剪切文件夹
 * @param string $src
 * @param string $dst
 * @return string
 */
function cutfolder($src,$dst){
    //echo $src,"--",$dst;
    if(file_exists($dst)){
        if(is_dir($dst)){
            if(!file_exists($dst."/".basename($src))){
                if(rename($src,$dst."/".basename($src))){
                    $mes="剪切成功";
                }else{
                    $mes="剪切失败";
                }
            }else{
                $mes="存在同名文件夹";
            }
        }else{
            $mes="不是一个文件夹";
        }
    }else{
        $mes="目标文件夹不存在";
    }
    return $mes;
}

/**
 * 删除文件夹
 * @param string $path
 * @return string
 */
function delfolder($path){
    $handle=opendir($path);
    while(($item=readdir($handle))!==false){
        if($item!="."&&$item!=".."){
            if(is_file($path."/".$item)){
                unlink($path."/".$item);
            }
            if(is_dir($path."/".$item)){
                $func=__function__;
                $func($path."/".$item);
            }
        }
    }
    closedir($handle);
    rmdir($path);
    return "文件夹删除成功";
}

 

4、文件操作函数 file.func.php

<?php 

// 文件操作函数集合

//bytes/kb/mb/gb/tb/eb
/**
 * 转换字节大小
 * @param number $size
 * @return number
 */
function transbyte($size) {
    $arr = array ("b", "kb", "mb", "gb", "tb", "eb" );
    $i = 0;
    while ( $size >= 1024 ) {
        $size /= 1024;
        $i ++;
    }
    return round ( $size, 2 ) . $arr [$i];
}

/**
 * 创建文件
 * @param string $filename
 * @return string
 */
function createfile($filename) {
    //file/1.txt
    //验证文件名的合法性,是否包含/,*,<>,?,|
    $pattern = "/[\/,\*,<>,\?\|]/";
    if (! preg_match ( $pattern, basename ( $filename ) )) {
        //检测当前目录下是否存在同名文件
        if (! file_exists ( $filename )) {
            //通过touch($filename)来创建
            if (touch ( $filename )) {
                return "文件创建成功";
            } else {
                return "文件创建失败";
            }
        } else {
            return "文件已存在,请重命名后创建";
        }
    } else {
        return "非法文件名";
    }
}

/**
 * 重命名文件
 * @param string $oldname
 * @param string $newname
 * @return string
 */
function renamefile($oldname,$newname){
//    echo $oldname,$newname;
//验证文件名是否合法
    if(checkfilename($newname)){
        //检测当前目录下是否存在同名文件
        $path=dirname($oldname);
        if(!file_exists($path."/".$newname)){
            //进行重命名
            if(rename($oldname,$path."/".$newname)){
                return "重命名成功";
            }else{
                return "重命名失败";
            }
        }else{
            return "存在同名文件,请重新命名";
        }
    }else{
        return "非法文件名";
    }
    
}

/**
 *检测文件名是否合法
 * @param string $filename
 * @return boolean
 */
function checkfilename($filename){
    $pattern = "/[\/,\*,<>,\?\|]/";
    if (preg_match ( $pattern,  $filename )) {
        return false;
    }else{
        return true;
    }
}

/**
 * 删除文件
 * @param string $filename
 * @return string
 */
function delfile($filename){
    if(unlink($filename)){
        $mes="文件删除成功";
    }else{
        $mes="文件删除失败";
    }
    return $mes;
}

/**
 * 下载文件操作
 * @param string $filename
 */
function downfile($filename){
    header("content-disposition:attachment;filename=".basename($filename));
    header("content-length:".filesize($filename));
    readfile($filename);
}

/**
 * 复制文件
 * @param string $filename
 * @param string $dstname
 * @return string
 */
function copyfile($filename,$dstname){
    if(file_exists($dstname)){
        if(!file_exists($dstname."/".basename($filename))){
            if(copy($filename,$dstname."/".basename($filename))){
                $mes="文件复制成功";
            }else{
                $mes="文件复制失败";
            }
        }else{
            $mes="存在同名文件";
        }
    }else{
        $mes="目标目录不存在";
    }
    return $mes;
}

function cutfile($filename,$dstname){
    if(file_exists($dstname)){
        if(!file_exists($dstname."/".basename($filename))){
            if(rename($filename,$dstname."/".basename($filename))){
                $mes="文件剪切成功";
            }else{
                $mes="文件剪切失败";
            }
        }else{
            $mes="存在同名文件";
        }
    }else{
        $mes="目标目录不存在";
    }
    return $mes;
}

/**
 * 上传文件
 * @param array $fileinfo
 * @param string $path
 * @param array $allowext
 * @param int $maxsize
 * @return string
 */
function uploadfile($fileinfo,$path,$allowext=array("gif","jpeg","jpg","png","txt"),$maxsize=10485760){
    //判断错误号
    if($fileinfo['error']==upload_err_ok){
        //文件是否是通过http post方式上传上来的
        if(is_uploaded_file($fileinfo['tmp_name'])){
            //上传文件的文件名,只允许上传jpeg|jpg、png、gif、txt的文件
            //$allowext=array("gif","jpeg","jpg","png","txt");
            $ext=getext($fileinfo['name']);
            $uniqid=getuniqidname();
            $destination=$path."/".pathinfo($fileinfo['name'],pathinfo_filename)."_".$uniqid.".".$ext;
            if(in_array($ext,$allowext)){
                if($fileinfo['size']<=$maxsize){
                    if(move_uploaded_file($fileinfo['tmp_name'], $destination)){
                        $mes="文件上传成功";
                    }else{
                        $mes="文件移动失败";
                    }
                }else{
                    $mes="文件过大";
                }
            }else{
                $mes="非法文件类型";
            }
        }else{
            $mes="文件不是通过http post方式上传上来的";
        }
    }else{
        switch($fileinfo['error']){
            case 1:
                $mes="超过了配置文件的大小";
                break;
            case 2:
                $mes="超过了表单允许接收数据的大小";
                break;
            case 3:
                $mes="文件部分被上传";
                break;
            case 4:
                $mes="没有文件被上传";
                break;
        }
    }
    
    return $mes;
    
}

 

5、公共函数 common.func.php

<?php 

// 公共函数集合

/**
 * 提示操作信息的,并且跳转
 * @param string $mes
 * @param string $url
 */
function alertmes($mes,$url){
    echo "<script type='text/javascript'>alert('{$mes}');location.href='{$url}';</script>";
}

/**
 * 截取文件扩展名
 * @param string $filename
 * @return string
 */
function getext($filename){
    return strtolower(pathinfo($filename,pathinfo_extension));
}

/**
 * 产生唯一名称
 * @param int $length
 * @return string
 */
function getuniqidname($length=10){
    return substr(md5(uniqid(microtime(true),true)),0,$length);
}

 

6、主文件 index.php

<?php 
require_once 'dir.func.php';
require_once 'file.func.php';
require_once 'common.func.php';
$path="file";
$path=$_request['path']?$_request['path']:$path;
$act=$_request['act'];
$filename=$_request['filename'];
$dirname=$_request['dirname'];
$info=readdirectory($path);
if(!$info){
    echo "<script>alert('没有文件或目录!!!');location.href='index.php';</script>";
}
//print_r($info);
$redirect="index.php?path={$path}";
if($act=="创建文件"){
    //创建文件
//    echo $path,"--";
//    echo $filename;
    $mes=createfile($path."/".$filename);
    alertmes($mes,$redirect);
}elseif($act=="showcontent"){
    //查看文件内容
        $content=file_get_contents($filename);
        //echo "<textarea readonly='readonly' cols='100' rows='10'>{$content}</textarea>";
        //高亮显示php代码
        //高亮显示字符串中的php代码
        if(strlen($content)){
        $newcontent=highlight_string($content,true);
        //高亮显示文件中的php代码
        //highlight_file($filename);
        $str=<<<eof
        <table width='100%' bgcolor='pink' cellpadding='5' cellspacing="0" >
            <tr>
                <td>{$newcontent}</td>
            </tr>
        </table>
eof;
        echo $str;
    }else{
        alertmes("文件没有内容,请编辑再查看!",$redirect);
    }
}elseif($act=="editcontent"){
    //修改文件内容
    //echo "编辑文件";
    $content=file_get_contents($filename);
    //echo $content;
    $str=<<<eof
    <form action='index.php?act=doedit' method='post'> 
        <textarea name='content' cols='190' rows='10'>{$content}</textarea><br/>
        <input type='hidden' name='filename' value='{$filename}'/>
        <input type="hidden" name="path" value="{$path}" />
        <input type="submit" value="修改文件内容"/>
    </form>
eof;
    echo $str;
}elseif($act=="doedit"){
    //修改文件内容的操作
    $content=$_request['content'];
    //echo $content;
    if(file_put_contents($filename,$content)){
        $mes="文件修改成功";
    }else{
        $mes="文件修改失败";
    }
    alertmes($mes,$redirect);
}elseif($act=="renamefile"){
    //完成重命名
    $str=<<<eof
    <form action="index.php?act=dorename" method="post"> 
    请填写新文件名:<input type="text" name="newname" placeholder="重命名"/>
    <input type='hidden' name='filename' value='{$filename}' />
    <input type="submit" value="重命名"/>
    </form>
eof;
echo $str;
}elseif($act=="dorename"){
    //实现重命名的操做
    $newname=$_request['newname'];
    $mes=renamefile($filename,$newname);
    alertmes($mes,$redirect);
}elseif($act=="delfile"){
    $mes=delfile($filename);
    alertmes($mes,$redirect);
}elseif($act=="downfile"){
    //完成下载的操作
    $mes=downfile($filename);
}elseif($act=="创建文件夹"){
    $mes=createfolder($path."/".$dirname);
    alertmes($mes,$redirect);
}elseif($act=="renamefolder"){
    $str=<<<eof
            <form action="index.php?act=dorenamefolder" method="post"> 
    请填写新文件夹名称:<input type="text" name="newname" placeholder="重命名"/>
    <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'];
    //echo $newname,"-",$dirname,"-",$path;
    $mes=renamefolder($dirname,$path."/".$newname);
    alertmes($mes,$redirect);
}elseif($act=="copyfolder"){
        $str=<<<eof
    <form action="index.php?act=docopyfolder" method="post"> 
    将文件夹复制到:<input type="text" name="dstname" placeholder="将文件夹复制到"/>
    <input type="hidden" name="path" value="{$path}" />
    <input type='hidden' name='dirname' value='{$dirname}' />
    <input type="submit" value="复制文件夹"/>
    </form>
eof;
echo $str;
}elseif($act=="docopyfolder"){
    $dstname=$_request['dstname'];
    $mes=copyfolder($dirname,$path."/".$dstname."/".basename($dirname));
    alertmes($mes,$redirect);
}elseif($act=="cutfolder"){
            $str=<<<eof
    <form action="index.php?act=docutfolder" method="post"> 
    将文件夹剪切到:<input type="text" name="dstname" placeholder="将文件剪切到"/>
    <input type="hidden" name="path" value="{$path}" />
    <input type='hidden' name='dirname' value='{$dirname}' />
    <input type="submit" value="剪切文件夹"/>
    </form>
eof;
echo $str;
}elseif($act=="docutfolder"){
    //echo "文件夹被剪切了";
    $dstname=$_request['dstname'];
    $mes=cutfolder($dirname,$path."/".$dstname);
    alertmes($mes,$redirect);
}elseif($act=="delfolder"){
    //完成删除文件夹的操作
    //echo "文件夹被删除了";
    $mes=delfolder($dirname);
    alertmes($mes,$redirect);
}elseif($act=="copyfile"){
                $str=<<<eof
    <form action="index.php?act=docopyfile" method="post"> 
    将文件复制到:<input type="text" name="dstname" placeholder="将文件复制到"/>
    <input type="hidden" name="path" value="{$path}" />
    <input type='hidden' name='filename' value='{$filename}' />
    <input type="submit" value="复制文件"/>
    </form>
eof;
echo $str;
}elseif($act=="docopyfile"){
    $dstname=$_request['dstname'];
    $mes=copyfile($filename,$path."/".$dstname);
    alertmes($mes,$redirect);
}elseif($act=="cutfile"){
                $str=<<<eof
    <form action="index.php?act=docutfile" method="post"> 
    将文件剪切到:<input type="text" name="dstname" placeholder="将文件剪切到"/>
    <input type="hidden" name="path" value="{$path}" />
    <input type='hidden' name='filename' value='{$filename}' />
    <input type="submit" value="剪切文件"/>
    </form>
eof;
echo $str;
}elseif($act=="docutfile"){
    $dstname=$_request['dstname'];
    $mes=cutfile($filename,$path."/".$dstname);
    alertmes($mes,$redirect);
}elseif($act=="上传文件"){
    //print_r($_files);
    $fileinfo=$_files['myfile'];
    $mes=uploadfile($fileinfo,$path);
    alertmes($mes, $redirect);
}
?>
<!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>insert title here</title>
<link rel="stylesheet" href="cikonss.css" />
<script src="jquery-ui/js/jquery-1.10.2.js"></script>
<script src="jquery-ui/js/jquery-ui-1.10.4.custom.js"></script>
<script src="jquery-ui/js/jquery-ui-1.10.4.custom.min.js"></script>
<link rel="stylesheet" href="jquery-ui/css/ui-lightness/jquery-ui-1.10.4.custom.css"  type="text/css"/>
<style type="text/css">
    body,p,div,ul,ol,table,dl,dd,dt{
        margin:0;
        padding: 0;
    }
    a{
        text-decoration: none;
    }
    ul,li{
        list-style: none;
        float: left;
    }
    #top{
        width:100%;
        height:48px;
        margin:0 auto;
        background: #e2e2e2;
    }
    #navi a{
        display: block;
        width:48px;
        height: 48px;
    }
    #main{
        margin:0 auto;
        border:2px solid #abcdef;
    }
    .small{
        width:25px;
        height:25px;
        border:0;
}
</style>
<script type="text/javascript">
    function show(dis){
    document.getelementbyid(dis).style.display="block";
    }
    function delfile(filename,path){
        if(window.confirm("您确定要删除嘛?删除之后无法恢复哟!!!")){
                location.href="index.php?act=delfile&filename="+filename+"&path="+path;
        }
    }
    function delfolder(dirname,path){
        if(window.confirm("您确定要删除嘛?删除之后无法恢复哟!!!")){
            location.href="index.php?act=delfolder&dirname="+dirname+"&path="+path;
        }
    }
    function showdetail(t,filename){
        $("#showimg").attr("src",filename);
        $("#showdetail").dialog({
              height:"auto",
              width: "auto",
              position: {my: "center", at: "center",  collision:"fit"},
              modal:false,//是否模式对话框
              draggable:true,//是否允许拖拽
              resizable:true,//是否允许拖动
              title:t,//对话框标题
              show:"slide",
              hide:"explode"
        });
        }
    function goback($back){
        location.href="index.php?path="+$back;
    }
</script>
</head>

<body>
<div id="showdetail"  style="display:none"><img src="" id="showimg" alt=""/></div>
<h1>在线文件管理器</h1>
<div id="top">
    <ul id="navi">
        <li><a href="index.php" title="主目录"><span style="margin-left: 8px; margin-top: 0px; top: 4px;" class="icon icon-small icon-square"><span class="icon-home"></span></span></a></li>
        <li><a href="#"  onclick="show('createfile')" title="新建文件" ><span style="margin-left: 8px; margin-top: 0px; top: 4px;" class="icon icon-small icon-square"><span class="icon-file"></span></span></a></li>
        <li><a href="#"  onclick="show('createfolder')" title="新建文件夹"><span style="margin-left: 8px; margin-top: 0px; top: 4px;" class="icon icon-small icon-square"><span class="icon-folder"></span></span></a></li>
        <li><a href="#" onclick="show('uploadfile')"title="上传文件"><span style="margin-left: 8px; margin-top: 0px; top: 4px;" class="icon icon-small icon-square"><span class="icon-upload"></span></span></a></li>
        <?php 
        $back=($path=="file")?"file":dirname($path);
        ?>
        <li><a href="#" title="返回上级目录" onclick="goback('<?php echo $back;?>')"><span style="margin-left: 8px; margin-top: 0px; top: 4px;" class="icon icon-small icon-square"><span class="icon-arrowleft"></span></span></a></li>
    </ul>
</div>
<form action="index.php" method="post" enctype="multipart/form-data">
<table width="100%" border="1" cellpadding="5" cellspacing="0" bgcolor="#abcdef" align="center">
<tr id="createfolder"  style="display:none;">
        <td>请输入文件夹名称</td>
        <td >
            <input type="text" name="dirname" />
            <input type="hidden" name="path"  value="<?php echo $path;?>"/>
            <input type="submit"  name="act"  value="创建文件夹"/>
        </td>
</tr>
    <tr id="createfile"  style="display:none;">
        <td>请输入文件名称</td>
        <td >
                <input type="text"  name="filename" />
                <input type="hidden" name="path" value="<?php echo $path;?>"/>
                <input type="submit"  name="act" value="创建文件" />    
        </td>
    </tr>
    <tr id="uploadfile" style="display:none;">
        <td >请选择要上传的文件</td>
        <td ><input type="file" name="myfile" />
            <input type="submit" name="act" value="上传文件" />    
        </td>
    </tr>
    <tr>
        <td>编号</td>
        <td>名称</td>
        <td>类型</td>
        <td>大小</td>
        <td>可读</td>
        <td>可写</td>
        <td>可执行</td>
        <td>创建时间</td>
        <td>修改时间</td>
        <td>访问时间</td>
        <td>操作</td>
    </tr>
<?php 
if($info['file']){
    $i=1;
    foreach($info['file'] as $val){
    $p=$path."/".$val;
?>
    <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="文件"/></td>
        <td><?php echo transbyte(filesize($p));?></td>
        <td><?php $src=is_readable($p)?"correct.png":"error.png";?><img class="small" src="images/<?php echo $src;?>" alt=""/></td>
        <td><?php $src=is_writable($p)?"correct.png":"error.png";?><img class="small" src="images/<?php echo $src;?>" alt=""/></td>
        <td><?php $src=is_executable($p)?"correct.png":"error.png";?><img class="small" 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>
        <?php 
        //得到文件扩展名
            $ext=strtolower(end(explode(".",$val)));
            $imageext=array("gif","jpg","jpeg","png");
            if(in_array($ext,$imageext)){
                ?>    
                <a href="#"  onclick="showdetail('<?php echo $val;?>','<?php echo $p;?>')"><img class="small" src="images/show.png"  alt="" title="查看"/></a>|
        <?php 
            }else{
        ?>
        <a href="index.php?act=showcontent&path=<?php echo $path;?>&filename=<?php echo $p;?>" ><img class="small" src="images/show.png"  alt="" title="查看"/></a>|
        <?php }?>
        <a href="index.php?act=editcontent&path=<?php echo $path;?>&filename=<?php echo $p;?>"><img class="small" src="images/edit.png"  alt="" title="修改"/></a>|
        <a href="index.php?act=renamefile&path=<?php echo $path;?>&filename=<?php echo $p;?>"><img class="small" src="images/rename.png"  alt="" title="重命名"/></a>|
        <a href="index.php?act=copyfile&path=<?php echo $path;?>&filename=<?php echo $p;?>"><img class="small" src="images/copy.png"  alt="" title="复制"/></a>|
        <a href="index.php?act=cutfile&path=<?php echo $path;?>&filename=<?php echo $p;?>"><img class="small" src="images/cut.png"  alt="" title="剪切"/></a>|
        <a href="#"  onclick="delfile('<?php echo $p;?>','<?php echo $path;?>')"><img class="small" src="images/delete.png"  alt="" title="删除"/></a>|
        <a href="index.php?act=downfile&path=<?php echo $path;?>&filename=<?php echo $p;?>"><img class="small"  src="images/download.png"  alt="" title="下载"/></a>
        </td>        
    </tr>
<?php 
$i++;
    }
}



?>

<!-- 读取目录的操作-->
<?php 
if($info['dir']){
    $i=$i==null?1:$i;
    foreach($info['dir'] as $val){
        $p=$path."/".$val;
?>
    <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="文件"/></td>
        <td><?php  $sum=0; echo transbyte(dirsize($p));?></td>
        <td><?php $src=is_readable($p)?"correct.png":"error.png";?><img class="small" src="images/<?php echo $src;?>" alt=""/></td>
        <td><?php $src=is_writable($p)?"correct.png":"error.png";?><img class="small" src="images/<?php echo $src;?>" alt=""/></td>
        <td><?php $src=is_executable($p)?"correct.png":"error.png";?><img class="small" 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="delfolder('<?php echo $p;?>','<?php echo $path;?>')"><img class="small" src="images/delete.png"  alt="" title="删除"/></a>|
        </td>        
    </tr>
<?php 
$i++;
    }
}

?>

    
    
    
</table>
</form>

</body>
</html>

 

缺点:php混编