Maison  >  Article  >  développement back-end  >  Méthode d'expression régulière PHP pour vérifier l'extension de fichier

Méthode d'expression régulière PHP pour vérifier l'extension de fichier

WBOY
WBOYoriginal
2023-06-24 12:13:401907parcourir

Dans le processus de développement Web, il est parfois nécessaire d'imposer des restrictions de format sur les fichiers téléchargés, c'est-à-dire que seuls les fichiers des types spécifiés peuvent être téléchargés pour passer la vérification. À ce stade, vous pouvez utiliser des expressions régulières PHP pour vérifier l'extension du fichier.

L'expression régulière PHP est un outil puissant pour faire correspondre et rechercher des chaînes. Elle peut nous aider à déterminer rapidement et avec précision si un morceau de texte répond aux exigences selon certaines règles et à le traiter davantage. Ensuite, cet article expliquera comment utiliser les expressions régulières PHP pour la vérification des extensions de fichiers.

Première étape : Obtenez l'extension du fichier téléchargé

Pour vérifier l'extension du fichier téléchargé, nous devons d'abord obtenir le nom complet du fichier téléchargé. En PHP, vous pouvez obtenir des informations sur les fichiers via la variable $_FILES. Cette variable est un tableau bidimensionnel grâce auquel des informations telles que le nom, le type, la taille et l'emplacement de stockage temporaire du fichier téléchargé peuvent être obtenues.

Par exemple, $_FILES'file' est le nom de fichier d'origine du fichier téléchargé.

Ensuite, nous devons séparer l'extension du fichier du nom du fichier. Les informations sur le fichier (nom de fichier, extension, chemin, etc.) peuvent être obtenues à l'aide de la fonction intégrée PHP pathinfo(). Cette fonction renverra un tableau associatif contenant des informations telles que le chemin du fichier, le nom du fichier et l'extension du fichier.

Par exemple, $ext = pathinfo($_FILES'file', PATHINFO_EXTENSION); peut obtenir l'extension du fichier téléchargé.

Étape 2 : Utilisez des expressions régulières pour vérifier l'extension du fichier téléchargé

Après avoir obtenu l'extension du fichier, vous devez la vérifier pour confirmer si l'extension du fichier appartient à un type de fichier autorisé. La méthode d'utilisation des expressions régulières PHP pour la vérification est la suivante :

$allowExt = '/^(jpg|jpeg|png|gif)$/'; // 允许上传的文件类型

if (preg_match($allowExt, $ext)) {
   // 扩展名合法,文件类型符合要求
} else {
   // 扩展名不合法,文件类型不符合要求
}

Parmi elles, utilisez la fonction preg_match() pour faire correspondre l'extension du fichier téléchargé. Si la correspondance est réussie, cela signifie que l'extension du fichier. est autorisé.

L'expression régulière ci-dessus '/^(jpg|jpeg|png|gif)$/' correspondra à toutes les chaînes se terminant par jpg, jpeg, png et gif, correspondant à n'importe quel format. C'est légal format de fichier.

Il convient de noter que le '^' dans l'expression régulière représente la position de départ de la chaîne et '$' représente la position de fin de la chaîne. Par conséquent, l'expression régulière ci-dessus limite l'extension de fichier à seulement quatre types : jpg, jpeg, png et gif.

Étape 3 : Complétez le code de vérification du téléchargement de fichier

En combinant les deux étapes ci-dessus, le code de vérification complet du téléchargement de fichier est le suivant :

<?php

$allowExt = '/^(jpg|jpeg|png|gif)$/'; // 允许上传的文件类型
$ext = pathinfo($_FILES['file']['name'], PATHINFO_EXTENSION); // 获取上传文件的扩展名

if (preg_match($allowExt, $ext)) {
    // 扩展名合法,文件类型符合要求
    echo '文件上传成功!';
    // 进行上传操作
} else {
    // 扩展名不合法,文件类型不符合要求
    echo '文件上传失败,文件类型不允许!';
}
# 🎜🎜#Quand l'extension du fichier téléchargé répond aux exigences, affichez « Fichier téléchargé avec succès » et effectuez l'opération de téléchargement ; sinon, affichez « Échec du téléchargement du fichier, le type de fichier n'est pas autorisé ».

Résumé

Ce qui précède explique comment utiliser les expressions régulières PHP pour vérifier les extensions de fichiers. En obtenant l'extension du fichier téléchargé et en utilisant des expressions régulières pour la correspondance, les types de fichiers téléchargés peuvent être efficacement restreints, offrant ainsi des garanties plus sûres et plus efficaces pour le développement Web.

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!

Déclaration:
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