Maison > développement back-end > tutoriel php > Comment puis-je valider efficacement les extensions de fichiers en PHP ?

Comment puis-je valider efficacement les extensions de fichiers en PHP ?

DDD
Libérer: 2024-11-28 03:45:14
original
192 Les gens l'ont consulté

How Can I Efficiently Validate File Extensions in PHP?

Assurer une vérification précise des extensions de fichiers

La vérification des extensions de fichiers est cruciale lors de la gestion des téléchargements de fichiers en PHP. Une méthode courante consiste à utiliser la fonction pathinfo, comme démontré dans la requête :

$filename = $_FILES['video_file']['name'];
$ext = pathinfo($filename, PATHINFO_EXTENSION);
if ($ext !== 'gif' || $ext !== 'png' || $ext !== 'jpg') {
    echo 'error';
}
Copier après la connexion

Cependant, cette approche peut ne pas être optimale lors de la prise en charge d'une gamme plus large d'extensions. Prenons le cas où vous autorisez 20 extensions différentes :

if ($ext !== 'gif' || $ext !== 'png' || $ext !== 'jpg' || ...) {
    // ...
}
Copier après la connexion

Un tel code serait verbeux et potentiellement inefficace. Une méthode alternative consiste à utiliser un tableau d'extensions autorisées :

$allowed = array('gif', 'png', 'jpg');
$filename = $_FILES['video_file']['name'];
$ext = pathinfo($filename, PATHINFO_EXTENSION);
if (!in_array($ext, $allowed)) {
    echo 'error';
}
Copier après la connexion

Cette approche simplifie le code et améliore l'efficacité en réduisant le nombre de comparaisons requises. En vérifiant si l'extension existe dans le tableau $allowed, vous pouvez rapidement valider sa validité.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal