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.

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.

Pubblicitร 
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...

Correggere l’errore the uploaded file exceeds the upload_max_filesize directive in php.ini

L'errore the uploaded file exceeds the upload_max_filesize directive in...

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...

5 script PHP per gestire BBCode

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ร