Поле при регистрации не понимает русский язык

Тема в разделе "Регулярные выражения", создана пользователем Alexeina66, 8 окт 2018.

  1. Alexeina66

    Alexeina66

    Регистр.:
    26 авг 2013
    Сообщения:
    326
    Симпатии:
    354
    Добрый день.
    Есть форма регистрации. При вводе фамилии на русском языке получаю ошибку - Last name contains invalid characters.
    Код:
    case 'basic':
                     /* validate lastname */
                    if(is_empty($args['lastname'])) {
                        throw new Exception(__("You must enter last name"));
                    }
                    if(!valid_name($args['lastname'])) {
                        throw new Exception(__("Last name contains invalid characters"));
                    }
                    if(strlen($args['lastname']) < 3) {
                        throw new Exception(__("Last name must be at least 3 characters long. Please try another"));
                    }
    
    Валидация
    Код:
    function valid_name($name) {
        if(preg_match('/[\'^£$%&*()}{@#~?><>,|=+¬]/', $name)) {
            return false;
        } else {
            return true;
        }
    }
    Подскажите как переписать регулярку, чтобы поле понимало русский язык? Спасибо!
     
  2. MuayThai

    MuayThai Создатель

    Регистр.:
    27 июл 2016
    Сообщения:
    16
    Симпатии:
    2
    Но дело-то не в регулярке, наверное, а в кодировке, не?
     
  3. Alexeina66

    Alexeina66

    Регистр.:
    26 авг 2013
    Сообщения:
    326
    Симпатии:
    354
    Разобрался. Дело не в кодировке. Тему можно закрывать.
     
  4. MuayThai

    MuayThai Создатель

    Регистр.:
    27 июл 2016
    Сообщения:
    16
    Симпатии:
    2
    А в чём дело, не поделитесь, для будущих поколений?