Я немного запутался в фильтрации и проверке, особенно в последовательности, которую следует использовать.
Когда вы обрабатываете сгенерированные пользователем данные для хранения в базе данных, вы сначала фильтруете, а затем проверяете или наоборот?
Фильтрация может исправить ошибку, которая сделает данные действительными, поэтому, если вы сначала отфильтруете, недопустимые данные могут стать действительными, но они будут отличаться от исходного пользовательского ввода.
Если вы сначала проверяете и знаете, что данные достоверны, то зачем вообще их фильтровать?