Разрешить только определенные символы в PHP - PullRequest
5 голосов
/ 28 декабря 2008

Мне нужно проверить, содержит ли переменная что-то ДРУГОЕ, что a-z A-Z 0-9 и "." характер (полная остановка). Любая помощь будет оценена.

Ответы [ 3 ]

10 голосов
/ 28 декабря 2008

Есть два способа сделать это.

Скажите, содержит ли переменная один символ , а не в допустимых диапазонах. Это достигается использованием класса отрицательных символов [^ ...]:

preg_match('/[^a-zA-Z0-9\.]/', $your_variable);

Другая альтернатива - убедиться, что каждый символ в строке имеет значение в допустимом диапазоне:

!preg_match('/^[a-zA-Z0-9\.]*$/', $your_variable);
8 голосов
/ 28 декабря 2008
if (preg_match('/[^A-Z\d.]/i', $var))
  print $var;
8 голосов
/ 28 декабря 2008
if (preg_match("/[^A-Za-z0-9.]/", $myVar)) {
   // make something
}

Ключевым моментом здесь является использование «^» в группе [] - оно соответствует каждому символу, кроме символов в квадратных скобках.

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