Функция Php, чтобы определить, состоит ли строка только из буквенно-цифровых символов? - PullRequest
2 голосов
/ 01 декабря 2008

Существует ли функция Php для определения, состоит ли строка только из буквенно-цифровых символов ASCII?

Примечание: извините, если вопрос звучит глупо для некоторых, но я не мог легко найти такую ​​функцию в руководстве по Php.

Ответы [ 4 ]

9 голосов
/ 01 декабря 2008

Попробуйте ctype_alnum

1 голос
/ 01 декабря 2008
preg_match('/^[a-z0-9]+$/i', $str);

Редактировать: Джон Т ответ лучше. Просто предоставив другой метод.

0 голосов
/ 07 мая 2016

Мое длинное, но простое решение

strspn($string, '0123456789qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM_') == strlen($string)

Функция strspn () находит длину начального сегмента $ string, который содержит только буквы, цифры и символы подчеркивания (второй аргумент). Если вся строка состоит только из букв, цифр и подчеркивания, возвращаемое значение будет равно длине строки.

0 голосов
/ 10 июля 2014

Это моё решение

<?php
public function alphanum($string){
    if(function_exists('ctype_alnum')){
        $return = ctype_alnum($string);
    }else{
        $return = preg_match('/^[a-z0-9]+$/i', $string) > 0;
    }
    return $return;
}
?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...