2015-04-28 62 views
0

如何刪除最後一個斜線之前的點?刪除點獲取目錄中的文件列表

例與HTML表格點輸出:

Name        Type   Size  Last Modified 
http://www.airsahara.in./fares/  text/x-php 662  2014-09-04 
http://www.airsahara.in./   text/x-php 1681  2014-09-04 

這裏是PHP代碼我有,讓我僅根據什麼是忽略數組中讀取特定的目錄。我只是不知道如何擺脫.之前的尾部斜槓/

我需要刪除該點,以便網址可以正確。

<? 
$ignore = array('images', 'css', 'includes', 'cgi-bin', 'xml-sitemap.php'); 

    function getFileList($dir, $recurse=false) { 
    global $ignore; 

    $retval = array(); 

    // open pointer to directory and read list of files 
    $d = @dir($dir) or die("getFileList: Failed opening directory $dir for reading"); 
    while (false !== ($entry = $d->read())) { 

     // Check if this dir needs to be ignored, if so, skip it. 
     if (in_array(utf8_encode($entry), $ignore)) 
      continue; 

     // skip hidden files 
     if($entry[0] == ".") continue; 
     if(is_dir("$dir$entry")) { 
     $retval[] = array(
      "name" => "$dir$entry/", 
      "type" => filetype("$dir$entry"), 
      "size" => 0, 
      "lastmod" => filemtime("$dir$entry") 
     ); 
     if($recurse && is_readable("$dir$entry/")) { 
      $retval = array_merge($retval, getFileList("$dir$entry/", true)); 
     } 
     } elseif(is_readable("$dir$entry")) { 
     $retval[] = array(
      "name" => "$dir", 
      "type" => mime_content_type("$dir$entry"), 
      "size" => filesize("$dir$entry"), 
      "lastmod" => filemtime("$dir$entry") 
     ); 
     } 
    } 
    $d->close(); 

    return $retval; 
    } 

    $dirlist = getFileList("./", true); 

    // output file list in HTML TABLE format 
    echo "<table border=\"1\">\n"; 
    echo "<thead>\n"; 
    echo "<tr><th>Name</th><th>Type</th><th>Size</th><th>Last Modified</th></tr>\n"; 
    echo "</thead>\n"; 
    echo "<tbody>\n"; 
    foreach($dirlist as $file) { 
     if($file['type'] != 'text/x-php') continue; 
    echo "<tr>\n"; 
    echo "<td>http://www.airsahara.in{$file['name']}</td>\n"; 
    echo "<td>{$file['type']}</td>\n"; 
    echo "<td>{$file['size']}</td>\n"; 
    echo "<td>",date('Y-m-d', $file['lastmod']),"</td>\n"; 
    echo "</tr>\n"; 
    } 
    echo "</tbody>\n"; 
    echo "</table>\n\n"; 
?> 

回答

2

你可以執行字符串替換 -

"name" => str_replace('./','/', $dir), 
+0

這是太簡單了。謝謝。認爲這是最合乎邏輯的方法嗎? – Mike

+0

不知道這些名字是如何形成的,我會說這是最合乎邏輯的。 –

+0

謝謝。我總是看着明顯的做事方式。 – Mike

相關問題