显示并连接目录中所有文件

//**************************************
    //     读取一个目录并且连接到目录中的所有文件
    //     (包括二级目录)。以下代码是直接从我的站点上
    //     COPY过来的,是为了我的需要而写的。你可以作适当 
    //     的修改来满足你自己的需要。
    //     作者: Canivour
    //**************************************
    //     
    
    ////////////////////////////////////////
    ////////////////////
    // 名 称: 显示目录中的文件
    //    //////////////
    // 作 者: Canivour////////////////////
    ////////////////////
    //日 期: 03.13.01////////////////////
    ////////////////////
    //Coded while listening to Rolling Stone
    //     s - Paint it Black//
    ////////////////////////////////////////
    ////////////////////
    ////////////////////////////////////////
    ////////////////////
    // 显示出($start_dir)目录中的内容
    // 把所有"for loops"语句中的数字“25”替代为    
    // 你所需要列出的目录的字母个数
    // 比如:/home/canivour/html/pics = 23 个字母    
    //    在加上2即为25 //////
    //   如有问题
    //  e-mail联系:
    //     [email protected].///////
    /////////////////Enjoy//////////////////
    ////////////////////
    ////////////////////////////////////////
    //////////////////// 
    <?
    
function listDir($dir,$level){
        
//check for . and .. directory
        
if ($file!="." && $file!="..")
        {
            if (
$dir!="/home/canivour/html/pics")
            {
                
//这一部分解释目录路径                         //目的为只显示目录名而不是整个目录路径
                
$lastTitle $dir[strlen($dir)];
                for(
$y=25$dir[$y]!= $lastTitle$y++)
                {
                    
$asciiTitle .= $dir[$y];
                }
                print 
"<BR><B><I>".$asciiTitle."</I></B><BR>";
                
$asciiTitle "";
            }
        }
        
$dp=opendir($dir); //open directory
        
while (false!=($file=readdir($dp))){
            if (
$file!="." && $file!=".."){
                if (
is_dir($dir."/".$file)) {
                    
//如果 $file 是一个目录在次调用此函数
                    //(It will display files in folders that are inside of your default directory)
                    
listDir($dir."/".$file,$level+1);
                }
                else {
                    
//如果 $file 是文件建立连接
                    
$last $dir[strlen($dir)];
                    for(
$x=25$dir[$x] != $last$x++)
                    {
                        
$ascii .= $dir[$x];
                    } 
//end for
                    
print "<a href=/~canivour/pics/".$ascii."/".$file.">".$file."</a><BR>\n";
                    
$ascii "";
                } 
//end if-else
            
//end if
        
//end while
    
//end function
    
$start_dir="/home/canivour/html/pics"//默认目录
    
$level=1//level of directory
    
listDir($start_dir,$level);
    
?>