Overall I think this is a great idea. I wish we'd done it from the outset. One caveat worth mention is that these type checking functions behave unexpectedly in some cases. It's worth reading the documentation carefully and considering how the precedence of the checks is applied. For example: `is_numeric('42'); // true`

That said, currently the PDO type doesn't really matter AFAIK. For example you could insert a `PDO::PARAM_INT` into a `VARCHAR` column with no issues.