Código PHP:
$nombre_de_archivo = "mi archivo.jpg";
$nombre_de_archivo = str_replace(" ", "-", $nombre_de_archivo);
echo $nombre_de_archivo; // mi-archivo.jpg
Saludos.
PD: Te recomiendo que le agregues un identificador unico a cada archivo para que el archivo en el disco duro sea algo como: mi-archivo-1234.jpg y luego con EXPRESIONES REGULARES (

) o un complejo script de substr, strrpos, strrstr y cosas así para sacarle el codigo cuando lo vayas a descargas.