ctype_lower

funkcja

Sprawdza, czy wszystkie znaki w ciągu to małe litery ASCII (a–z). Cyfry, spacje i wielkie litery zwracają false.

ctype_lower(mixed $text): bool

ctype_lower zwraca true, gdy każdy znak podanego ciągu to mała litera alfabetu ASCII (az). Cyfry, spacje, znaki specjalne oraz wielkie litery powodują zwrot false. Pusta wartość też zwraca false. Podobnie jak ctype_upper, funkcja operuje wyłącznie na ASCII — polskie małe litery jak ą, ę, ś nie są rozpoznawane. Sprawdza się przy walidacji slugów, nazw zmiennych czy identyfikatorów bez cyfr.

<?php
declare(strict_types=1);

$slug = 'produkty';

if (!ctype_lower($slug)) {
    throw new \InvalidArgumentException('Slug musi zawierać wyłącznie małe litery ASCII.');
}

echo "Slug: {$slug}"; // Slug: produkty

Pułapka z liczbami całkowitymi. Przed PHP 8.1 przekazanie int w zakresie -128..255 było interpretowane jako kod ASCII — np. ctype_lower(97) sprawdzało znak 'a' (kod 97) i zwracało true. Od PHP 8.1 takie wywołanie generuje E_DEPRECATED. Zawsze przekazuj ciąg znaków, np. ctype_lower((string) $zmienna).

📘 Naucz się w lekcji →