在php中从关联数组中删除文件路径

在php中从关联数组中删除文件路径,php,Php,我正在尝试获取文件夹中的所有文件。这些文件是图像以及一个名为“Thumbs.db”的额外文件 下面是我的代码 $path = $ringPaths[$i]; $dirname = substr( $path ,0, -4 ); $lastpart = basename( $dirname , ".zip"); $abspath = substr( $dirname ,strpos( $dirname, "com/")+4 );

我正在尝试获取文件夹中的所有文件。这些文件是图像以及一个名为“Thumbs.db”的额外文件

下面是我的代码

$path = $ringPaths[$i];
        $dirname =   substr( $path ,0, -4 );
        $lastpart = basename( $dirname , ".zip");
        $abspath = substr( $dirname ,strpos( $dirname, "com/")+4 );
        $direcotypath = "../".$abspath."/".$lastpart;

        $files = glob($direcotypath."/*.*");
        foreach ($files as $key => &$value) 
        {
                $value = str_replace( "..", $url, $value);
            }

            $final = array_merge($final,$files);
我已尝试使用以下代码删除Thumbs.db

foreach ($final as $key => &$value) 
    {     

              if($value == "Thumbs.db")
              {
                unset($final[$key]); 
              }
        }
有人知道上面的代码有什么问题吗?我仍在学习过程中

阅读,您将看到可以设置标志以过滤将返回的文件类型

您可以尝试以下方法:

$files = glob($direcotypath . "/*.{jpg,jpeg,gif,png,bmp}", GLOB_BRACE);
//                                 ^^^ Add more allowed extensions here.

“它不起作用”是没有用的。请解释,如果您收到错误消息(如果是,是哪一条),或者结果是否与您的预期不同(如果是,如何)。请确保已完成。我认为
$value
将是
$direcotypath。“/Thumbs.db”
而不仅仅是
“Thumbs.db”
您不应该在foreach()循环中使用
&
引用。这可能会导致非常奇怪和难以跟踪的错误。对于解析文件名和路径,我建议使用或,因为它们有返回文件路径和文件名各个部分的方法。