Muchas veces, cuando desarrollamos alguna aplicación web con PHP se nos hace necesario subir archivos, lo cual requiere crear código seguro y que no deje cabos sueltos. Debemos controlar perfectamente que el usuario suba el archivo que corresponda y no algún bicharraco. Para ellos les dejo esta función que extráe la extensión de un archivo con lo que podremos controlar el tipo de datos que suben los usuarios a nuestro servidor.
Ocupé las funciones PHP strtolower() que nos cambiará a minúsculas el nombre del archivo en caso de que venga con mayúsculas; explode() para separar el nombre de la extensión tomando el punto como ente separarador y end() que , en caso de que el nombre del archivo esté compuesto por puntos (ejemplo: fotos.chile.jpg) siempre considere el último elemento del array generado.
Ocupé las funciones PHP strtolower() que nos cambiará a minúsculas el nombre del archivo en caso de que venga con mayúsculas; explode() para separar el nombre de la extensión tomando el punto como ente separarador y end() que , en caso de que el nombre del archivo esté compuesto por puntos (ejemplo: fotos.chile.jpg) siempre considere el último elemento del array generado.
<?
function tipoArchivo($elArchivo)
{
$laExtension=strtolower(end(explode('.',$elArchivo)));
return $laExtension;
}
?>
Con tu archivo para upload que me prestaste la otra vez ya había usado esa función, pero no como función, sino la idea del explode + end.
ResponderBorrarAntes yo usaba una mezcla de count que igual funcionaba, pero esta se ve más elegante. Creo que la robaré y la agregaré a mis funciones útiles :D
todavía más elegante:
ResponderBorrarfunction dameExtension($archivo){
return strlolower(end(explode('.'$archivo)));
}