Si quieres extraer la extensión de un nombre de un archivo en un String, una manera sencilla y rápida es la siguiente:
$array = explode('.', $nombreArchivo);
$ext = end($array);
Lo que hacemos es, cortar el valor de $nombreArchivo por puntos y obtenemos con la funcion end la ultima parte del array y la guardamos en la variable $ext.
Podéis crear un método que compruebe si el nombre del archivo está en un listado de extensiones de la siguiente manera:
function extension_valida($nombre) {
// Extensiones validas:
$extensiones = array('avi','mkv','mpg','mpeg','divx');
$array = explode('.', $nombre);
$ext = end($array);
foreach ($extensiones as $extension) {
if (strtolower($extension) == strtolower($ext)) {
return true;
break;
}
}
return false;
}
Devolvería true si el nombre de archivo contiene una extensión valida (definida en el array) o false en caso contrario.
Espero que os haya gustado! Próximamente más.