Le funzioni fornite da questa estensione controllano che un carattere o una stringa siano conformi ad una determinata classe di caratteri a seconda della localizzazione corrente (vedi anche setlocale()).
Quando queste funzioni vengono chiamate con un numero intero come argomento si comportano esattamente come le loro controparti C da ctype.h. Ciò significa che passando un intero minore di 256 verrà utilizzato il carattere ASCII corrispondente per verificare che si adatti al range specificato (le cifre sono tra 0x30 e 0x39). Se il numero è compreso tra -128 e -1, inclusi, verrà aggiunto 256 e il controllo verrà fatto su di esso.
Quando viene passata una stringa come argomento verrà controllato qualunque
carattere contenuto in essa e verrà restituito true
solo se ogni carattere
è conforme ai criteri richiesti. Quanto viene passata una stringa vuota il
risultato sarà sempre true
in PHP < 5.1 e false
dalla 5.1.
Se viene passata qualunque variabile che non sia una stringa o un intero
la funzione restituirà false
immediatamente.
Va notato che è preferibile usare le funzioni ctype invece che le espressioni
regolari e alle funzioni "str_*"
e "is_*"
equivalenti.
Questo perché ctype usa una libreria C nativa e risulta quindi
significativamente più veloce.
Nota:
Queste funzioni non sono correlate affatto alla libreria "ctypes" di Python. L'estensione del nome deriva dal file header C ctype.h che sono definite equivalenti.
Questa estensione è anche anteriore al "ctypes" di Python e quindi ogni confusione causata da questo nome non è certo colpa nostra ...