É uma má ideia por alguns motivos:
- Primeiro, ele assume que suas entradas estarão sempre entrando no banco de dados e apenas no banco de dados. E se algo for usado na saída HTML? Ou em um e-mail? Ou escrito em um arquivo? Ou muitas outras coisas. Sua filtragem deve sempre ser sensível ao contexto.
-
Mais importante, ele encoraja o uso desleixado de GET, POST, etc, porque não há indicação de que eles foram filtrados. Se alguém vê você usar
echo $_POST['nome'];
em uma página, como eles saberiam que ela foi filtrada? Ou pior ainda... você tem certeza que foi? E aquele outro aplicativo? Você sabe, aquele que você acabou de entregar? O que os novos desenvolvedores fariam? Eles saberiam que a filtragem é importante?