Работа с символами и строками в PHP
В PHP определены следующие основные категории функций для выполнения операций со строками:
· проверка типа символов в строке и операции с кодом символа;
· определение длины строки и поиск в строке;
· сравнение строк;
· извлечение подстроки из строки;
· изменение содержимого строки;
· разбиение и слияние строк;
· перекодировка строки.
Функции PHP для проверки символов в строке имеют следующий синтаксис:
bool имя-функции (string text)
Функции проверяют заданную строку и, если все символы в строке удовлетворяют условию для данной функции, то функция возвращает true, в противном случае – false.
В PHP определены следующие имена функций и соответствующие им условия:
· ctype_alnum – проверка на буквы или цифры;
· ctype_alpha – проверка на буквы;
· ctype_lower – проверка на буквы в нижнем регистре;
· ctype_upper – проверка на буквы в верхнем регистре;
· ctype_digit – проверка на цифры;
· ctype_xdigit – проверка на шестнадцатеричные цифры;
· ctype_cntrl – проверка на управляющие символы;
· ctype_print – проверка на выводимые на печать символы;
· ctype_graph – проверка на выводимые на печать символы, за исключением пробельных символов (символа пробела, символов горизонтальной и вертикальной табуляции, символов перехода на новую строку и возврата каретки, символа перехода на новую страницу);
· ctype_punct – проверка на выводимые на печать символы, за исключением пробельных и буквенно-цифровых символов;
· ctype_space – проверка, являются ли все символы строки пробельными символами.
Получить символ по его десятичному коду можно с помощью функции
string chr(int $code)
Обратная операция – получение десятичного кода первого символа строки, заданной в качестве параметра, выполняется с помощью функции
int ord(string string).
Пример 4.6.112. Использование функции ctype_alnum():
В следующем фрагменте программы проверяется, являются ли строки и алфавитно-цифровыми или нет:
$str1 = "String 1"; // Первая строка
$str2 = "String2"; // Вторая строка
// Проверка первой строки на
// алфавитно-цифровые символы
$isAlNum1 = ctype_alnum($str1);
// Проверка второй строки на
// алфавитно-цифровые символы
$isAlNum2 = ctype_alnum($str2);
// Вывод типа первой строки
echo "\n\$str1 - ",
$isAlNum1?'':'not', " alphanumeric string";
// Вывод типа второй строки
echo "\n\$str2 - ",
$isAlNum2?'':'not', " alphanumeric string";
В результате выполнения фрагмента на экран будут выведены следующие строки:
![]() |