在子文件夹搜索中选择特定的图像名称

时间:2012-08-22 17:18:55

标签: php image if-statement directory

我正在使用以下代码搜索目录的所有子文件夹中的所有图像:

        function get_images10($root) {

            $r = array();
            foreach(glob("$root/*") as $n) {
                if (is_dir($n)) {
                    $r = array_merge($r, get_images10($n));
                } else {
                   $r[] = $n;
                }
            }

            return $r;
        }

它工作正常,但现在我想将搜索限制为仅在其文件名中包含后缀“thumb-”的图像。 在另一个脚本中,我使用了以下内容:

if ((strpos($filename,'thumb-') !== false)) {
  //some code
}

但是我不知道在上面提到的代码中将这样的陈述(if)放在哪里。 我怎么能这样做?

2 个答案:

答案 0 :(得分:1)

如果'thumb-'是文件名中的前缀,则只需将第3行更改为:

foreach(glob("$root/thumb-*") as $n) {

答案 1 :(得分:0)

我假设它是一个前缀,因为它以-结尾。无论如何,您可以在else elseif中执行此操作:

function get_images10($root) {
    $r = array();

    foreach(glob("$root/*") as $n) {
        if (is_dir($n)) {
            $r = array_merge($r, get_images10($n));
        } elseif (strpos($n, 'thumb-') !== false) {
            $r[] = $n;
        }
    }

    return $r;
}