subida - subir archivos php ejemplo
Obtener extensión de nombre de archivo como variable (6)
Posible duplicado:
¿Cómo extraer una extensión de archivo en PHP?
Tengo una variable $filename="filename.ext"
o $filename="filena.meext"
etc. ¿Cómo puedo extraer la extensión (aquí ext
) de la variable / cadena? La variable puede cambiar o puede tener más de un punto. En ese caso, quiero obtener la parte después del último punto.
Hay muchas formas de hacer esto, es decir, con explode () o con preg_match y otros.
Pero la forma en que hago esto es con pathinfo :
$path_info = pathinfo($filename);
echo $path_info[''extension''], "/n";
Podría explotar la cadena usando. Y luego tomar el último elemento de la matriz:
$filename = "file.m.e.ext";
$filenameitems = explode(".", $filename);
echo $filenameitems[count($filenameitems) - 1]; // .ext
// or echo $filenameitem[-1];
Podrías definir una función como esta:
function get_file_extension($filename)
{
/*
* "." for extension should be available and not be the first character
* so position should not be false or 0.
*/
$lastDotPos = strrpos($fileName, ''.'');
if ( !$lastDotPos ) return false;
return substr($fileName, $lastDotPos+1);
}
o podrías usar el objeto Spl_FileInfo integrado en PHP
Puede utilizar la información de ruta de interrogación.
$info = pathinfo($file);
dónde
$info[''extension'']
contiene la extensión
Quieres usar una expresión regular:
preg_match(''//.([^/.]+)$/'', $filename);
Puede probarlo here para ver si obtiene el resultado que desea, dada su entrada.
ver la respuesta :
$ext = pathinfo($filename, PATHINFO_EXTENSION);