PHP Conference Nagoya 2025

Введение

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

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

Внимание

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

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

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

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

Замечание:

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

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

Добавить

Примечания пользователей

Пользователи ещё не добавляли примечания для страницы
To Top