Il filtro per estensione si può fare direttamente con glob()
Codice PHP:
<?php
function random_image($path)
{
    
$files = array();
    
    if(!
is_dir($path)) die("Cartella non valida.");
    
    foreach(
glob($path "/*.{jpg,gif,png}"GLOB_BRACE) AS $file)   $files[] = $file;
    
    return 
$files[rand(0count($files)-1)];
}

echo 
random_image('immagini'); // Path senza slash finale
?>