删除带有'not allowed'PHP中数组的扩展


Remove filenames with 'not allowed' extensions in an array in PHP

假设我有一个PHP文件名数组,如$f = [ 'file1.jpg', file2.png', 'file3.bmp', 'file4.zip', 'file5.txt'... ];

现在我如何从数组中删除所有不允许扩展名的文件,在这种情况下删除除。jpg和。png以外的所有文件?

试试这个代码,你可以添加模式允许扩展在$allowed数组,但没有点

$f = array('file1.jpg', 'file2.png', 'file3.bmp', 'file4.zip', 'file5.txt' );
$allowed = array('jpg','png');
echo "<pre>before removing";
print_r($f);
echo "</pre>";
    foreach($f as $k=>$v){
        $ext = end(explode(".",$v));
        if(!in_array($ext,$allowed)){
            unset($f[$k]);
        }
    }
echo "<pre>after removing";
print_r($f);
echo "</pre>";