2011-11-16 33 views
0

而不是傳統的導航,我試圖模擬終端導航,或者你如何使用vim進行導航。 例子:使用php瀏覽本地目錄和文件

.. 
index 
otherfile 

這是我的代碼:

$dir = realpath(dirname(__FILE__)); 
if(is_dir($dir)){ 
    if($open = opendir($dir)){ 
     while(($file = readdir($open)) !==false){ 
     if(is_dir($file)){ 
      if($file == '.'){ } 
      else{ 
       echo "<a href=".$file.">".$file."</a><br/>"; 
      } 
     } 
     else{  
     $name = explode('.php',$file); 
     echo "<a href=".$file.">".$name[0]."</a><br/>"; 
     } 
     } 

    } 
} 
else{ 
    echo $dir." Was not found"; 
    } 
} 
  1. 如何刪除我從列表我在文件或文件夾?例如,如果我在index.php頁面上,它仍然出現在列表中。

  2. 我想給他們一個數字例子'1file.php''2anotherfile.php'.. 如何排序他們的數字,然後刪除數字和'.php',最後打印出來?

如果你覺得重構的東西,請這樣做......

enter image description here

+0

你可以添加你正在尋找的示例輸出到你的問題,這不是很清楚。 –

+0

是的,檢查問題的頂部,它說的例子... –

+3

我認爲你可以使用PHP的DirectoryIterator,檢查一些例子:http://www.php.net/manual/en/directoryiterator。 next.php –

回答

1
  1. 「我怎樣才能從列表中刪除我的文件或文件夾?例如,如果我在index.php頁面上,它仍然出現在列表中。「

只是檢查,如果當前項目是當前文件,如果是則跳過:

else { 
    if ($name == basename(dirname(__FILE__))) continue; // if this is the current file, go to the next iteration of the loop 
    $name = explode('.php',$file); 
    echo "<a href=".$file.">".$name[0]."</a><br/>"; 
} 

請注意,這是假定你是在同一個目錄中的文件(它可以做因爲$dir始終是腳本所在的目錄),如果不是,您也可以添加目錄檢查。

  1. 「如何將號碼添加到文件或文件夾,例如1index.php開始,然後在代碼中,組織中的所有文件和文件夾按編號,並打印出來沒有號碼和」。 PHP的'?」

嗯,我不太清楚你的意思,但是如果你的意思是按字母順序排序,那麼當你獲得列表時,它已經按字母順序排序了。