Для проверки пользовательского ввода на стороне сервера использую сравнение с регулярными выражениями. В качестве значения квантификатора использую strlen() от вводимой пользователем строки.
Например:
$login_pattern = "/([A-Za-zА-Яа-яЁё\-\_]){" . strlen($login) . "}/";
Можно ли делать это проще, если да - как?