我只想索引当前目录中的所有文件:
if ($handle = opendir('.')) {
while (($file = readdir($handle)) !== FALSE) {
if (is_dir($file)) continue;
echo "<p><strong>$file</strong>: is_dir($file)? "
.(is_dir($file)?"✔":"✖")."</p>\n";
}
closedir($handle);
}
.. 输出:
index.php: is_dir(index.php)? ✖</p>
readdir.php: is_dir(readdir.php)? ✖</p>
但是将 is_dir(..) 放在循环条件中
while (($file = readdir($handle)) !== FALSE && !is_dir($file)) {
...
}
..什么都不返回!
我知道 is_dir(..) 总是返回一个布尔值。那我的表达有什么问题吗?仅出于完整性考虑:Windows 7 SP1 上的 FastCGI 在 IIS 7.5 上的 PHP 5.4.14。
谢谢