Введение

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

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

Внимание

Начиная с PHP 8.1.0, передача нестроковых аргументов устарела. В будущем аргумент будет интерпретироваться как строка вместо кода ASCII. В зависимости от предполагаемого поведения аргумент должен быть приведён к строке (string) или должен быть сделан явный вызов функции chr().

Если аргументом выступает строка, то функции будут проверять каждый символ в этой строке и вернут true только если каждый символ удовлетворяет требуемому условию. При вызове с пустой строкой результатом всегда будет false.

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

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

Замечание:

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

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

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top