Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Помогите разобрать регулярное выражение.
Форумы портала PHP.SU » » HTTP и PHP » Помогите разобрать регулярное выражение.

Страниц (1): [1]
 

1. Sound - 07 Декабря, 2018 - 21:56:15 - перейти к сообщению
Помогите разобрать регулярное выражение. Опасно его оставлять на проверку логина и пароля или нет?

PHP:
скопировать код в буфер обмена
  1. function proverka_peremenix_login($obrabotka) {
  2.      if (preg_match("/[^(\w)|(\x7F-\xFF\_\-@\/.!?:)|(\s)]/", $obrabotka)) {
  3.       return false;
  4.      }else{
  5.           return true;
  6.          }
  7. }


Спасибо за ранее.
2. Мелкий - 07 Декабря, 2018 - 23:03:37 - перейти к сообщению
Эту регулярку писал определённо человек незнакомый с синтаксисом регулярных выражений. Иначе объяснить повторение круглых скобок и | внутри символьной маски невозможно.

Коряво написано, что в строке должны быть только: \w (точный список зависит от локали, обычно a-z0-9 и ещё что-нибудь), символы @/.?!()|, пробельные символы либо что угодно из верхнего диапазона ASCII (то есть изрядный кусок юникода включая смайлики и прочую наскальную живопись дружно проходит паровозиком, рандомно обламываясь на случайных символах)

Цитата:
и пароля

А нафига пароль фильтровать?
3. Строитель - 07 Декабря, 2018 - 23:24:31 - перейти к сообщению

Мелкий Радость

 

Powered by ExBB FM 1.0 RC1