ctype_upper / ctype_lower în PHP

Verifică dacă un text conține doar majuscule (ctype_upper) sau doar litere mici (ctype_lower).

Sintaxă
ctype_upper(mixed $text): bool

Ce face ctype_upper / ctype_lower

ctype_upper returnează true dacă toate caracterele sunt majuscule A-Z, iar ctype_lower dacă toate sunt litere mici a-z. Orice spațiu, cifră sau diacritică face rezultatul false.

Pentru texte românești, compară textul cu varianta lui transformată: mb_strtoupper($text) === $text.

Parametri

Parametru Descriere
$text Textul verificat.

Ce returnează

true sau false. Un text gol dă false.

Exemple

Exemplul 1: Majuscule și litere mici

<?php
foreach (["PHP", "php", "Php", "PHP8", "ȘCOALA"] as $text) {
    echo "$text: upper = " . var_export(ctype_upper($text), true)
        . ", lower = " . var_export(ctype_lower($text), true) . "\n";
}

Rezultat

PHP: upper = true, lower = false
php: upper = false, lower = true
Php: upper = false, lower = false
PHP8: upper = false, lower = false
ȘCOALA: upper = false, lower = false

Exemplul 2: Mesaj scris doar cu majuscule (cu diacritice)

<?php
$mesaj = "VREAU RĂSPUNS ACUM";

if (mb_strtoupper($mesaj) === $mesaj) {
    echo "Te rugăm să nu scrii doar cu majuscule.";
}

Rezultat

Te rugăm să nu scrii doar cu majuscule.

Greșeli frecvente

  • Verifici o propoziție cu ctype_upper și rezultatul este false din cauza spațiilor. Funcția cere ca toate caracterele să fie majuscule.

Comenzi înrudite

  • ctype_alpha: Verifică dacă un text conține doar litere (a-z, A-Z).
  • mb_strtoupper / mb_strtolower: Transformă un text în majuscule (mb_strtoupper) sau litere mici (mb_strtolower), inclusiv literele cu diacritice.
  • strtolower / strtoupper: Transformă toate literele unui text în litere mici (strtolower) sau mari (strtoupper).