Разрешить только определенные символы в строке - PullRequest
2 голосов
/ 24 октября 2009

Я искал способ создать функцию, чтобы проверить, содержит ли строка что-либо, кроме строчных букв и цифр, и возвращает ли она false. Я искал в Интернете, но все, что я могу найти, - это старые методы, которые требуют от вас использования функций, которые в PHP5 устарели.

Ответы [ 3 ]

2 голосов
/ 24 октября 2009
function check_input( $text ) {
  if( preg_match( "/[^a-z0-9]/", $text ) ) {
    return false;
  }
  else {
    return true;
  }
}
1 голос
/ 24 октября 2009

Используйте регулярное выражение. Используйте preg_match () .

$matches = preg_match('/[^a-z0-9]/', $string);

Так что теперь, если $matches имеет 1, вы знаете, что $string содержит плохие символы. В противном случае $matches - это 0, а $string - в порядке.

0 голосов
/ 24 октября 2009

Чтобы все немного перемешать

<?
$input = "hello world 123!";
$digits = array("1", "2", "3", "4", "5", "6", "7", "8", "9", "0");

if (ctype_alnum($input))
{
    if (ctype_lower(str_replace($digits, "", $input)))
    {
        // Input is only lowercase and digits
    }
}
?>

Но регулярное выражение - это, вероятно, путь сюда! =)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...