在php中从关联数组中删除文件路径
我正在尝试获取文件夹中的所有文件。这些文件是图像以及一个名为“Thumbs.db”的额外文件 下面是我的代码在php中从关联数组中删除文件路径,php,Php,我正在尝试获取文件夹中的所有文件。这些文件是图像以及一个名为“Thumbs.db”的额外文件 下面是我的代码 $path = $ringPaths[$i]; $dirname = substr( $path ,0, -4 ); $lastpart = basename( $dirname , ".zip"); $abspath = substr( $dirname ,strpos( $dirname, "com/")+4 );
$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()循环中使用&
引用。这可能会导致非常奇怪和难以跟踪的错误。对于解析文件名和路径,我建议使用或,因为它们有返回文件路径和文件名各个部分的方法。