ctype_upper
funkcja
Sprawdza, czy wszystkie znaki w ciągu to wielkie litery ASCII (A–Z). Pusta wartość i cyfry zwracają false.
ctype_upper(mixed $text): bool
ctype_upper zwraca true, gdy każdy znak podanego ciągu to wielka litera alfabetu ASCII (A–Z). Cyfry, spacje, znaki specjalne i małe litery powodują zwrot false. Pusta wartość też zwraca false. Funkcja operuje wyłącznie na ASCII — nie rozpoznaje polskich wielkich liter jak Ą, Ę, Ś. Przydaje się do walidacji kodów produktów, skrótów krajów (ISO 3166) czy sygnatur w formacie wielkich liter.
<?php
declare(strict_types=1);
$kodKraju = 'PL';
if (!ctype_upper($kodKraju) || strlen($kodKraju) !== 2) {
throw new \InvalidArgumentException('Kod kraju musi składać się z 2 wielkich liter ASCII.');
}
echo "Kraj: {$kodKraju}"; // Kraj: PL
Pułapka z liczbami całkowitymi. Przed PHP 8.1 przekazanie
intw zakresie -128..255 było interpretowane jako kod ASCII — np.ctype_upper(65)sprawdzało znak'A'(kod 65) i zwracałotrue. Od PHP 8.1 takie wywołanie generujeE_DEPRECATED. Zawsze przekazuj ciąg znaków, np.ctype_upper((string) $zmienna).