php dir()函数不读取一些条目

时间:2013-06-28 08:01:07

标签: php

我在这样的目录上使用php dir()函数:

/videos/1137
/videos/1137/0
/videos/1137/1
/videos/1137/2
/videos/1137/3
/videos/1137/4

代码以递归方式运行,但它不会选择一些目录

结果就像

READING /videos/1137
READING /videos/1137/2
READING /videos/1137/3

虽然所有文件夹都具有相同的权限,甚至用户/组也是相同的。

php dir()函数是否存在一些可能导致此问题的缺陷?

1 个答案:

答案 0 :(得分:2)

我不知道你在代码中做了什么,因为你没有向我们展示任何内容!

但是这里有一些代码可以列出给定文件夹的所有目录,希望你可以将它作为自己代码的灵感。

<?php
function scan_videos(&$array, $path)
{
    $files = glob($path.'/*');
    foreach ($files as $file)
    {
        if (is_dir($file))
        {
            $array[] = $file;
            scan_videos($array, $file);
        }
    }
}

$directories = array();
scan_videos($directories, 'videos');
print_r($directories);
?>

这将输出

Array
(
    [0] => videos/1137
    [1] => videos/1137/0
    [2] => videos/1137/1
    [3] => videos/1137/2
    [4] => videos/1137/3
    [5] => videos/1137/4
)