Введение

Функции, представленные этим расширением, позволяют проверить принадлежность символа или строки определенному классу символов, принимая во внимание текущие региональные установки (см. также функцию setlocale()).

Будучи вызванными с целочисленным аргументом, эти функции полностью аналогичны своим эквивалентам в языке C (из ctype.h). Это означает, что если вы передаёте целое значение менее 256, функции проверяют соответствует ли это значение ASCII указанному классу символов (цифры находятся в диапазоне 0x30-0x39). Если число находится в пределах от -128 до -1 включительно, то к его значению будет прибавлено 256 и сравнение будет проводиться с использованием результата сложения.

Если аргументом выступает строка, то функции будут проверять каждый символ в этой строке и вернут TRUE только если каждый символ удовлетворяет требуемому условию. При вызове с пустой строкой в качестве аргумента, функции всегда возвращают TRUE в PHP < 5.1 и FALSE после 5.1.

При передаче данных других типов (кроме целого или строки) функции сразу же возвращают FALSE.

Следует обратить внимание на то, что данные функции работают значительно быстрее, чем регулярные выражения и даже эквивалентиные "str_*" и "is_*" функции. Это происходит потому, что ctype использует родную библиотеку C и поэтому выполняется значительно быстрее.

Замечание:

Эти функции не имеют никакого отношения к Python-библиотеке "ctypes". Название расширения является сокращением имени заголовочного файла C ctype.h, который содержит C-эквиваленты данных функций.

Данное расширение также было создано раньше Python "ctypes", так что любая путаница, связанная с этими названиями, вряд ли является ошибкой со стороны разработчиков расширения.