Position actuelle: Accueil> Derniers articles> Comment juger si le nom du fichier répond à la spécification des lettres de majuscules uniquement par la fonction CTYPE_UPPER?

Comment juger si le nom du fichier répond à la spécification des lettres de majuscules uniquement par la fonction CTYPE_UPPER?

M66 2025-06-15

En PHP, nous devons parfois déterminer si une chaîne ne contient que des lettres majuscules, telles que la vérification si le nom de fichier est conforme à la spécification des lettres majuscules. La fonction CTYPE_UPPER est une fonction très pratique pour déterminer si tous les caractères d'une chaîne sont des lettres majuscules.

Cet article présentera en détail comment utiliser la fonction CTYPE_UPPER pour compléter ce jugement et le démontrer en combinaison avec la situation réelle du nom du fichier.

Quelle est la fonction CTYPE_UPPER?

CTYPE_UPPER est une fonction de PHP qui détecte si les caractères sont des lettres majuscules. Il vérifie tous les caractères de la chaîne et ne renvoie que si tous les caractères de la chaîne sont des lettres majuscules (AZ), sinon renvoie FALSE .

Prototype de fonction:

 bool ctype_upper(string $text)

Analyse des exigences

  • La chaîne à juger est le nom du fichier.

  • Les noms de fichiers sont uniquement autorisés à contenir des lettres majuscules (AZ), et les lettres minuscules, les chiffres, les symboles spéciaux, etc. ne sont pas autorisés.

  • Si la spécification est conforme, les invites conformes à la sortie; Sinon, les invites ne sont pas conformes.

Exemple de code

 <?php
// Exemple de nom de fichier
$filename = "DOCUMENT.TXT";

// Obtenez la partie principale du nom du fichier(Les extensions ne sont pas incluses)
$basename = pathinfo($filename, PATHINFO_FILENAME);

// Déterminez si seules des lettres majuscules sont incluses
if (ctype_upper($basename)) {
    echo "Les noms de fichiers sont conformes aux spécifications qui ne contiennent que des lettres majuscules。";
} else {
    echo "Le nom du fichier ne répond pas aux spécifications,Veuillez vous assurer d&#39;inclure uniquement des lettres majuscules。";
}
?>

Ici, nous utilisons la fonction Pathinfo pour obtenir la partie principale du nom du fichier pour éviter les points ou les lettres minuscules dans l'extension affectant le jugement. CTYPE_UPPER détermine uniquement si le corps principal du nom du fichier est toutes les lettres majuscules.

Choses à noter

  1. CTYPE_UPPER ne juge que les lettres et reviendra faux pour les chiffres, les points, les soulignements, etc.

  2. Si le nom de fichier contient une extension, il est généralement nécessaire de supprimer la partie d'extension avant de porter un jugement.

  3. Si le nom de fichier est une chaîne vide, CTYPE_UPPER renvoie False .

Exemple avancé: vérification du nom de fichier téléchargé via l'URL

Supposons que le fichier soit téléchargé via un formulaire, le nom du fichier doit se conformer à la spécification qui ne contient que des lettres majuscules. L'exemple de code est le suivant: