Manuel B.: Probleme mit is_dir()

Beitrag lesen

Hi,
unter PHP5.0.5 (CGU-FCGI) hab ich das problem, das bei

if(!is_dir($pfad))

einzelne Verzeichnisse trotzdem angezeigt werden. Ist bekannt, ob es dahingehend einen Bug gibt? Kennt jemand nen Workaround? Wenn ich mit is_file() arbeite, hab ich ds gleiche Problem. Hier ein Codeschnippsel:

  
  
  $dirs = array('', 'css', 'images', 'help', 'help/css', 'javascript');  
  
  foreach($dirs as $dir){  
   if(is_dir($this->fullpath . "/admin/" . $dir)){  
    $this->d = dir($this->fullpath . "/admin/" . $dir);  
    $full_dir = $GLOBALS['config']->get('path') . '/admin/' . $xml['art'] . 's/' . $xml['art'] . "_" . $xml->name . '/' . $dir;  
  
  
    $this->make_dir($full_dir);  
  
    while(false !== ($entry = $this->d->read())){  
     if(!is_dir($entry) && $entry != "." && $entry != ".."){  
      $this->remove_file[] = $full_dir . $entry;  
     }  
    }  
   }  
  }  

Erzeugt wird dann folgendes Array:

Array
(
    [0] => /blocks/block_admin/block_admin.php
    [1] => /blocks/block_admin/css/block_admin.css
    [2] => /blocks/block_mainmenu/block_mainmenu.php
    [3] => /blocks/block_mainmenu/images/folder_blank.gif
    [4] => /blocks/block_mainmenu/images/folder_open.gif
    [5] => /blocks/block_mainmenu/images/folder_close.gif
    [6] => /blocks/block_mainmenu/javascript/block_mainmenu.js
    [7] => /admin/modules/module_config/module_config.admin.php
    [8] => /admin/modules/module_config/help
    [9] => /admin/modules/module_config/images
    [10] => /admin/modules/module_config/imagesTextdatei
    [11] => /modules/module_config/css/module_config.css
    [12] => /modules/module_config/help/module_config.help.html
    [13] => /modules/module_config/help/css/module_config.help.css
)

Wobei [8] und [9] Verzeichnisse sind und nicht angezeigt werden sollten. (bei [10] fehlt nur der / in der Ausgabe)

Ich arbeite unter Sarge mit der CGI-Version von PHP5 unter Apache2