Extraire l'extension d'un fichier

Comment extraire l'extension d'un fichier en PHP ?
 Lors d'un upload de fichier ou d'un filtre sur une liste, on peut être amener à déterminer l'extension d'un fichier. La class FileGetExtension présente 3 méthodes pour extraire l'extension:
- method_substr(): copier les caractères de la position du dernier '.' jusqu'à la fin de l'url,
- method_explode(): prendre le dernier élément du tableau,
- method_pathinfo(): fonction PHP disponible depuis PHP 4.0.3.

<?php
/******************************************************************************
 * Extraire l'extension d'un fichier
 * @copyright Fobec 2011
 ******************************************************************************/
class FileGetExtension {

    /**
     * rechercher la position du dernier point dans l'url
     * @return string
     */
    static public function method_substr($filename) {
        $p= strrpos($filename, '.');
        if ($p!==false) {
            return substr($filename, $p + 1);
        }
        return null;
    }

    /**
     * dernier élément d'un tableau de chaine
     * @return string
     */
    static public function method_explode($filename) {
        $split=explode('.',$filename);
        if (count($split)>1) {
            return $split[count($split)-1];
        }
        return null;
    }

    /**
     * fonction PHP pathinfo()
     * @return string
     */
    static public function method_pathinfo($filename) {
        return pathinfo($filename, PATHINFO_EXTENSION);
    }
}
?>

Utilisation de la class
<?php
echo FileGetExtension::method_substr('/path1/picture.gif');
-> gif

echo FileGetExtension::method_explode('/path1/class.php');
-> php

echo FileGetExtension::method_pathinfo('/path1/frame.tpl');
-> tpl
?>

Quelle méthode choisir ?
Les 3 méthodes peuvent être utilisées pour extraire l'extension d'un fichier. Etant intégré au PHP Core, la fonction pathinfo() semble la manière la plus sûr et fiable. En terme de performance, la fonction method_substr() devrait être la plus rapide.
Ajouter un commentaire
Pseudo
Adresse email
Site internet (optionnel)
Votre commentaire
Fiche de l'article
Mise a jour27/05/2011
VisualisationVu 412 fois
PublicInternaute
CategorieWeb - PHP - String
Auteur de l'article
Fobec Fobec
connecté le 09/05/2012
36 ans - France Nord-Est
104 articles dans la section
Contacter l'auteur
Partager l'article