首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > PHP >

【求思路】PHP目录扫描,最大防止死循环的思路?该如何解决

2013-07-16 
【求思路】PHP目录扫描,最大防止死循环的思路?PHP扫描某个文件夹,防止死循环的思路。现在自己想到的只有两种

【求思路】PHP目录扫描,最大防止死循环的思路?
PHP扫描某个文件夹,防止死循环的思路。
现在自己想到的只有两种思路
1, while 扫描下去,如果碰到目录继续while。容易死机卡住
2,层级扫描,扫描一层然后保存目录地址到记录文件。然后再从保存的记录文件中提取目录地址再扫描一层,每次只扫描一层。不过如果目录太多,还是容易死机。
有没有更好的思路?
目录扫描 PHP opendir
[解决办法]
可以用迭代器呀
示例

$ite=new RecursiveDirectoryIterator("./");

$bytestotal=0;
$nbfiles=0;
foreach (new RecursiveIteratorIterator($ite) as $filename=>$cur) {
    $filesize=$cur->getSize();
    $bytestotal+=$filesize;
    $nbfiles++;
    echo "$filename => $filesize\n";
}

$bytestotal=number_format($bytestotal);
echo "Total: $nbfiles files, $bytestotal bytes\n";

[解决办法]
Filesystem这个东西能解决你的问题吗?
[解决办法]
SPL已经帮你解决这个问题,代码看#1
[解决办法]
1楼的代码收藏了,又学到东西了。
[解决办法]
顶帖收藏~~


[解决办法]
直接使用扩展
Directories

热点排行