PHP: Obtendo a extensão de um arquivo

Exemplo de uma função em PHP para obter, somente, a extensão do arquivo.

No exemplo abaixo estou simulando um arquivo de foto com extensão .jpg.

1
2
3
4
5
6
7
8
9
10
11
<?php
// pega a extensão do arquivo
function pegaExtensao($arquivo){
   $ext = explode('.',$arquivo);
   $ext = array_reverse($ext);
   return ".".$ext[0]; 
}
 
$extensao = pegaExtensao("fotos.jpg");
echo $extensao;
?>

Explicando:
linha 4: A função explode quebra em pedaços uma string, bastando informar um separador; como queremos a extensão de um arquivo, o separador será o (.). O retorno dessa função é uma matriz de string.
linha 5: A função array_reverse é utilizado para retornar os dados em ordem inversa. Com isso o valor do $ext[0] passa a ser a extensão do arquivo.
linha 10: Imprime o resultado.

2 comentários em “PHP: Obtendo a extensão de um arquivo

  • 14 de fevereiro de 2011 em 19:11
    Permalink

    Falai, muito bom o script, mas…

    só pra constar.
    se o arquivo tiver um nome assim fotos.2011.jpg e você não usar o array_reverse, o script mostrará o nome do meio pois:

    array[0] = fotos
    array[1] = .2011
    array[2] = .jpg

    e quando se usa o array_reverse a extensão sempre ficará no início…

    valeu….

    Resposta
    • 14 de fevereiro de 2011 em 20:24
      Permalink

      Olá Junior.

      Obrigado por complementar o post.

      Abraços.

      Resposta

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *