back to top

Ricavare l’estensione di un file con PHP

Quando si lavora con i file in un’applicazione web, può essere utile determinare l’estensione di un file, ad esempio per identificarne in modo semplice e veloce il tipo (ad esempio, .jpg per immagini, .pdf per documenti, ecc.). In questo articolo, vedremo come costruire una semplice funzione in PHP per estrarre l’estensione di un file a partire dal suo nome completo.

Cos’è l’estensione di un file?

L’estensione di un file è la parte finale del nome di un file, che segue un punto (.) e identifica il tipo di contenuto del file. Ad esempio, in documento.txt, l’estensione è .txt. Conoscere l’estensione di un file è fondamentale per determinare come il file dovrebbe essere trattato, visualizzato o elaborato.

Pubblicità

Una semplice funzione PHP per identificare l’estensione di un file

Vediamo ora una semplice funzione PHP che permette di estrarre l’estensione di un file partendo dal filename completo.

// PHP file extension
// una funzione per ricavare l'estensione di un file partendo dal filename completo
function file_exensiont($filename) {
  $ext = explode(".", $filename);
  return $ext[count($ext)-1];  
}

// Esempio di utilizzo:
echo file_extension('immagine.jpg'); // Restituisce: jpg

La verifica dell’estensione di un file può non essere sufficiente per garantirne la sicurezza

Sebbene l’estensione di un file possa fornire un’indicazione sul tipo di contenuto, è importante notare che essa può essere facilmente falsificata semplicemente rinominando il file.

Un file con estensione .jpg potrebbe, in realtà, contenere codice eseguibile o altri tipi di dati pericolosi.

Pertanto, per garantire la sicurezza in determinati contesti (ad esempio nel caso di upload di file da parte di utenti), non è sufficiente basarsi esclusivamente sulla verifica dell’estensione per identificare la natura di un file.

È consigliabile, pertanto, eseguire verifiche aggiuntive, come l’analisi del contenuto del file o dei suoi metadati, per confermare che il file sia effettivamente sicuro e corrisponda al tipo dichiarato dall’estensione.

Altri contenuti interessanti

Pubblicità

Potrebbero interessarti queste guide

Massimiliano Bossi
Massimiliano Bossi
Stregato dalla rete sin dai tempi delle BBS e dei modem a 2.400 baud, ho avuto la fortuna di poter trasformare la mia passione in un lavoro (nonostante una Laurea in Giurisprudenza). Adoro scrivere codice e mi occupo quotidianamente di comunicazione, design e nuovi media digitali. Orgogliosamente "nerd" sono il fondatore di MRW.it (per il quale ho scritto centinaia di articoli) e di una nota Web-Agency (dove seguo in prima persona progetti digitali per numerosi clienti sia in Italia che all'estero).

Leggi anche...

Cannot modify header information – headers already sent: come risolvere l’errore PHP

L'errore di PHP cannot modify header information - headers...

GD Library: creazione, manipolazione e ridimensionamento immagini con PHP

Le librerie GD (o GD Library), sono componenti fondamentali...

PHP: impostare il fuso orario italiano

Le tue pagine PHP non mostrano l’orario corretto? Probabilmente...

PHP BBCode: script pronti all’uso

A volte può aversi l'esigenza di dover offrire agli...

Estrarre hostname e dominio da una URL con PHP

Grazie alla funzione parse_url() di PHP è possibile analizzare...
Pubblicità