OUJOOD.COM
Qu'est-ce que la fonction strtoupper() ?
PHP : Référence des fonctions de manipulation de chaînesDisponibilité : PHP 4, PHP 5, PHP 7, PHP 8
La fonction strtoupper() est une fonction native de PHP qui permet de convertir tous les caractères alphabétiques d'une chaîne de caractères en majuscules. Cette fonction est particulièrement utile pour normaliser des données, comparer des chaînes sans tenir compte de la casse, ou formater du texte pour l'affichage.
Définition et utilisation de strtoupper()
Comment fonctionne strtoupper() ?
La fonction strtoupper() prend une chaîne de caractères en paramètre et retourne cette même chaîne après avoir converti tous les caractères alphabétiques en majuscules. Les caractères non alphabétiques (chiffres, ponctuation, espaces) restent inchangés.
strtoupper() retourne la chaîne transformée, après avoir converti tous les caractères alphabétiques en lettres majuscules. La chaîne originale n'est pas modifiée, car les chaînes sont immuables en PHP.
Important à savoir sur la localisation
Notez que la notion de "caractère alphabétique" est déterminée par la configuration de localisation (locale) du système. Avec la configuration par défaut "C", les caractères accentués comme les voyelles é, è, à, ù, ô ne seront pas convertis. Pour gérer correctement les caractères accentués, il est recommandé d'utiliser la fonction mb_strtoupper() avec l'encodage UTF-8.
Syntaxe
string strtoupper(string $string)
| Paramètre | Description |
|---|---|
|
$string |
Requis. La chaîne de caractères à convertir en majuscules. Peut contenir des lettres, chiffres, espaces et caractères spéciaux. |
|
Valeur de retour |
Retourne la chaîne convertie en majuscules sous forme de string. |
Exemples d'utilisation de strtoupper()
Exemple 1 : Conversion simple
Exemple : 📋 Copier le code
<?php
echo strtoupper("Bonjour monde!");
// Affiche : BONJOUR MONDE!
$texte = "bienvenue sur notre site";
$resultat = strtoupper($texte);
echo $resultat;
// Affiche : BIENVENUE SUR NOTRE SITE
?>
Résultat de l'exemple :
BONJOUR MONDE! BIENVENUE SUR NOTRE SITE
Dans cet exemple, la fonction strtoupper() convertit instantanément tous les caractères minuscules en majuscules. Les espaces et la ponctuation (comme le point d'exclamation) ne sont pas affectés par la transformation.
Exemple 2 : Utilisation pratique avec des variables
Exemple : 📋 Copier le code
<?php $nom = "dupont"; $prenom = "jean"; // Conversion en majuscules pour l'affichage $nomMajuscule = strtoupper($nom); $prenomMajuscule = strtoupper($prenom); echo "Nom : " . $nomMajuscule . "<br>"; echo "Prénom : " . $prenomMajuscule; // Affiche : // Nom : DUPONT // Prénom : JEAN ?>
Exemple 3 : Comparaison de chaînes sans casse
Exemple : 📋 Copier le code
<?php
$mot1 = "PHP";
$mot2 = "php";
// Comparaison insensible à la casse
if (strtoupper($mot1) === strtoupper($mot2)) {
echo "Les mots sont identiques (ignorant la casse)";
} else {
echo "Les mots sont différents";
}
// Affiche : Les mots sont identiques (ignorant la casse)
?>
Cas d'usage courants
- Normalisation de données : Uniformiser les saisies utilisateur avant stockage en base de données
- Comparaisons insensibles à la casse : Comparer des chaînes sans tenir compte des majuscules/minuscules
- Affichage de titres : Formater des titres ou en-têtes en majuscules pour un style particulier
- Validation de formulaires : Normaliser les codes postaux, identifiants ou références
- Génération de contenu : Créer du contenu formaté automatiquement
Alternative pour les caractères accentués
Pour gérer correctement les caractères accentués et Unicode, utilisez mb_strtoupper() :
Exemple : 📋 Copier le code
<?php $texte = "château français"; // Avec strtoupper() - ne gère pas les accents echo strtoupper($texte) . "<br>"; // Affiche : CHâTEAU FRANçAIS // Avec mb_strtoupper() - gère les accents echo mb_strtoupper($texte, 'UTF-8'); // Affiche : CHÂTEAU FRANÇAIS ?>
Fonctions connexes
strtolower(): Convertit une chaîne en minusculesucfirst(): Met en majuscule le premier caractèreucwords(): Met en majuscule la première lettre de chaque motmb_strtoupper(): Version multibyte pour Unicode
|
Fonction précédente: |
Fonction suivante: |