Esiste una funzione in php che ritorni l'estensione di un file dato in ingresso?
Se si potreste indicarmela please?
Grazie mille
Esiste una funzione in php che ritorni l'estensione di un file dato in ingresso?
Se si potreste indicarmela please?
Grazie mille
cerca l'ultimo punto ( . ) della stringa.. le lettere che lo seguono sono l'estensione del file..
Codice PHP:$file = 'test.php';
//esempio 1
$ext = end(explode('.', $file));
//esempio 2
$ext = substr(strrchr($file, '.'), 1);
//esempio 3
$file = pathinfo($file);
$ext = $file['extension'];
La variabile $file contiene una stringa, il nome del file in questo caso. Puoi trattarla con le funzioni dedicate (http://it.php.net/manual/it/ref.strings.php) in diversi modi per ottenere cio' che desideri![]()
E se io ti chiedessi come faresti per farti tornare il nome del file senza estensione?
Io ho usato
Hai un idea migliore?Codice PHP:$nome= substr("$row[nome]", 0, -4);
Vale sempre lo stesso discorso...
Utilizzare substr() come hai indicato tu. potrebbe complicarti le cose se l'estensione dovesse essere di 2 oppure 4 caratteri dopo il punto, anzichè 3.Codice PHP://esempio 1
$filename = basename($file, strrchr($file, '.'));
//esempio 2
$filename = basename($file, '.' . end(explode('.', $file)));
//esempio 3
$filename = substr($file, 0, strrpos($file, '.'));
Meglio esplodere la stringa e cercare l'ultimo punto oppure usare direttamente basename() che è dedicata a questo scopo.![]()
^^