60 votes

Extension de fichier de vérification PHP

J'ai un script de téléchargement dont j'ai besoin pour vérifier l'extension de fichier, puis exécuter des fonctions distinctes basées sur cette extension de fichier. Est-ce que quelqu'un sait quel code je dois utiliser ?

 if (FILE EXTENSION == ???)
{
FUNCTION1
}
else if
{
FUNCTION2
}

122voto

Brombomb Points 3669

pathinfo est ce que vous recherchez

PHP.net

 $file_parts = pathinfo($filename);

switch($file_parts['extension'])
{
    case "jpg":
    break;

    case "exe":
    break;

    case "": // Handle file extension for files ending in '.'
    case NULL: // Handle no file extension
    break;
}

24voto

Alon Points 2537
$info = pathinfo($pathtofile);
if ($info["extension"] == "jpg") { .... }

8voto

Akintunde-Rotimi Points 3757

Pour php 5.3+ vous pouvez utiliser la classe SplFileInfo()

 $spl = new SplFileInfo($filename); 
print_r($spl->getExtension()); //gives extension 

De plus, puisque vous vérifiez l'extension pour les téléchargements de fichiers, je vous recommande fortement d'utiliser le type mime à la place.

Pour php 5.3+ utilisez la classe finfo

 $finfo = new finfo(FILEINFO_MIME);
print_r($finfo->buffer(file_get_contents($file name)); 

7voto

imaginabit Points 1
$file_parts = pathinfo($filename);

$file_parts['extension'];
$cool_extensions = Array('jpg','png');

if (in_array($file_parts['extension'], $cool_extensions)){
    FUNCTION1
} else {
    FUNCTION2
}

2voto

$path = 'image.jpg';
echo substr(strrchr($path, "."), 1); //jpg

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X