|
在file_helper的约227行有个函数:get_dir_file_info
这个函数主要作用是遍历给定目录下的文件
第二个参数如果给FALSE值的话将会遍历给定目录以及子目录所有文件并汇总到一个二维数组
问题就在这,当汇总成二维数组时第一维是以文件名作为key的,如果此时子目录与父目录有相同文件名的情况,那么其中一个将被另一个覆盖掉
PHP复制代码
while (FALSE !== ($file = readdir($fp)))
{
if (@is_dir($source_dir.$file) AND strncmp($file, '.', 1) !== 0 AND $top_level_only === FALSE)
{
get_dir_file_info ($source_dir.$file.DIRECTORY_SEPARATOR, $top_level_only, TRUE);
}
elseif (strncmp($file, '.', 1) !== 0)
{
$_filedata[$file] = get_file_info ($source_dir.$file);
$_filedata[$file]['relative_path'] = $relative_path;
}
}
复制代码
问题就在$_filedata[$file] = get_file_info($source_dir.$file);这行,key用的是$file,这个$file在父路径与子路径极有可能是重复的。
|
|