从数组中查找丢失的文件

时间:2014-05-09 17:23:45

标签: php

我试图找出我的收藏中丢失的文件,它们的编号来自' 0001.rar'直到' 2500.rar',我用这个把所有的名字都放到一个数组中:

$files = glob("/*.rar");

如何确定文件夹中缺少哪些文件?

1 个答案:

答案 0 :(得分:0)

听起来你需要array_diff

  

将array1与一个或多个其他数组进行比较,并返回array1中任何其他数组中不存在的值。

您可以使用array_maprange构建预期文件名数组:

<?php

array_diff(
  array_map(function ($i) {
    return sprintf('%04d.rar', $i);
  }, range(1, 2500)),
  glob('*.rar')
);

上面会产生一个只缺少名字的数组。