Scusami ma fai semplicemente una funzione cosi:
codice:
function filtranome($name, $filetype,$path) 
{ 
    // todo: consider refactoring 
    $extension = explode('/', $filetype); 
    // qui filtri con varie funzioni 
    $nuovonome = $name; 
    $nuovonome = str_replace(array(' ', '.',','), '_', $nuovonome); // elimino alcuni caratteri 
    $nuovonome = strtolower($nuovonome); // tutto in minuscolo 
    if($path=='jpeg'){
    $nuovonome = time() . '_' . $nuovonome . '.' . 'jpeg'; 
    }elseif($path=='img'){ $nuovonome = time() . '_' . $nuovonome . '.' . $extension[1];  }
    return $nuovonome; 
}
E di conseguenza
codice:
copy($_FILES['uploadfile']['tmp_name'], "file_caricati/" . filtranome($_FILES['uploadfile']['name'], $filetype,'jpeg')) or die("Impossibile caricare il file. Riprovare."); 
    copy($_FILES['uploadfile']['tmp_name'], "immagini/" . filtranome($_FILES['uploadfile']['name'], $filetype,'img')) or die("Impossibile caricare il file. Riprovare.");