if(is_dir($entry))
这里改为
if(is_dir("newdir/".$entry))
注意完整路径

解决方案 »

  1.   

    曾遇到过这个问题
    当时是做FTP的目录处理,因为站长该了目录---用pwd命令看到的是“/”
    我解决的方法是,把程序考到相应的目录下执行,并且你用is_dir查看的目录也是这个目录下的 wasy(嘻嘻哈哈) 似乎没有注意到权限的问题浅妄薄见,望与斟酌
      

  2.   

    我这边很正常,楼主有没有newdir/newdir/这个目录?
    windows应该没有权限问题骑士也可以在windows下面试一试
      

  3.   

    有一个疑问,楼主既然有
    echo filetype($entry);
    为什么后面没有显示文件类型呢,我这里可都有显示?
      

  4.   

    类似的问题我也遇到过,不但is_dir得不到结果,is_file也不行,也不知道为什么,最后我只能用filetype来判断是不是dir,好象不是wasy(嘻嘻哈哈)所说的那原因,因为不管是相对路径还是绝对路径,我都试过了,不行。而且我用echo filetype 来显示,和楼主一样,除了dir以外其它任何类型均不显示出来。我查了一下书,书上说is_file和is_dir等等的返回结果都存放在什么文件缓存区中,是不是跟这有关?或者跟配置有关?那么我如何取得文件缓存区内的返回信息呢?希望高手指教,谢谢!我的环境是:win98+apache+php
      

  5.   

    我刚才测试了一下,代码并没问题,我也犯了wasy所说的错误.
      

  6.   

    try:
    <?
    $d=dir("newdir");
    while($entry=$d->read())
    {
    echo $entry;
    clearstatcache();
    if(is_dir("newdir/".$entry))
    echo "[dir]";
    echo filetype($entry);
    echo "<br>";
    }
    $d->close();
    ?>
    不管怎樣,路徑應該正確