7 de janeiro de 2008

Script PHP - Verificar extensão de arquivos

Em um certo momentos de meus estudos de PHP tive a necessidade de utilizar uma função que verifique a extensão de arquivos de um certo diretório, procurei por este código, ma não achei, os que eu achei não funcionavam bem, então decidi desenvolver um e estou disponibilizando-o aqui:


//Função que verifica a extensão
function extensao($arquivo)
{
$tam = strlen($arquivo);

//ext de 3 chars
if( $arquivo[($tam)-4] == '.' )
{
$extensao = substr($arquivo,-3);
}

//ext de 4 chars
elseif( $arquivo[($tam)-5] == '.' )
{
$extensao = substr($arquivo,-4);
}

//ext de 2 chars
elseif( $arquivo[($tam)-3] == '.' )
{
$extensao = substr($arquivo,-2);
}

//Caso a extensão não tenha 2, 3 ou 4 chars ele não aceita e retorna Nulo.
else
{
$extensao = NULL;
}
return $extensao;
}


Uso:
$ext = extensao( 'arquivo.com.pontos.no.meio.ext' );
ou
$arquivo = 'arquivo.com.pontos.no.meio.ext';
$ext = extensao( $arquivo );

8 comentários:

Anônimo disse...

Muito bom seu blog, agradeço por ter gostado do Blogmlk.

Boa sorte com o blog.

Abração


|blogmlk.wordpress.com
|blogmlk@hotmail.com

Anônimo disse...

quero intalar o notrevbolgo para ganhar no jogo de dama

Anônimo disse...

existe um jeito bem mais fácil de se fazer isso

$extensao = strrchr($arquivo,".");
ele vai extrair os ultimos caracteres começando do caratere definido, no caso o ponto "."

se for "foto.jpg"
ele vai pegar só o ".jpg" ;)

Plínio disse...

fiz diferente tbm.

function getExtensaoArquivo($arquivo) {
$ext = explode('.', $arquivo);
return $ext[count($ext)-1];
}

fabiano disse...

Tambem tenho um exemplo no meu site, mas utilizando espressões regulares.
Att
Fabiano

Unknown disse...

que tal?

function GetExtensao($arquivo) {
$extensao = array_reverse(explode(".",$arquivo));
return $extensao[0];
}

Desculpe o americanismo do Get... mais fica menor assim né?

Anônimo disse...

Muito Amador

Anderson disse...

Cara muito bom mesmo simples e funcional, parabéns