这是我的PHP代码:
<?php
// Enumerate the directories in styles
$styles_dir = 'styles/';
if($handle = opendir($styles_dir))
{
while(FALSE !== ($file = readdir($handle)))
{
echo $file . '(' . is_dir($file) . ')<br>';
}
}
?>
以下是styles
中的目录:
http://files.quickmediasolutions.com/php.jpg
这是输出:
.(1)
..(1)
forest()
industrial()
为什么不是forest
和industrial
目录?
答案 0 :(得分:1)
is_dir
的路径是相对于基本文件的,所以你真的需要做一个像
is_dir($styles_dir . '/' . $file)
请注意,.
和..
“目录”会屏蔽它,因为这些目录无处不在。
答案 1 :(得分:1)
您需要在目录名前加上文件名,因为is_dir
相对于当前目录有效。
更改
echo $file . '(' . is_dir($file) . ')<br>';
到
echo $file . '(' . is_dir("$styles_dir/$file") . ')<br>';
或者,您可以使用chdir将目录更改为$styles_dir
,然后您当前的代码就可以使用。