Como obter a extensão de um arquivo em PHP? Métodos confiáveis e armadilhas
Olá a todos! Comecei a estudar PHP e estou escrevendo um pequeno script para upload de imagens no servidor. Preciso verificar a extensão do arquivo enviado para, por exemplo, permitir apenas JPG e PNG.
Tentei usar a função `explode()` e pegar o último elemento do array, mas parece um gambiarra. Aqui está meu código:
```php
$filename = 'myphoto.jpg';
$parts = explode('.', $filename);
$extension = end($parts);
echo $extension; // jpg
```
Mas o que acontece se o nome do arquivo contiver vários pontos, como `my.file.name.jpg`? Ou se o arquivo não tiver extensão? Ouvi dizer que existem funções especiais para isso. Por favor, me digam como obter a extensão do arquivo em PHP de forma correta e segura? Quais são as funções nativas e o que é melhor usar em diferentes situações? Desde já, obrigado pela ajuda!
<<>>
Solução principal: função pathinfo()
A maneira mais correta e universal de obter a extensão de um arquivo em PHP é usar a função nativa pathinfo()