根据MySQL字段验证PHP数据类型?

时间:2013-01-21 12:28:17

标签: php mysql pdo

自从我上任以来很长一段时间,但我遇到了一个问题,我想知道是否有人可以提出解决方案。

情景:

我有许多HTML表单通过AJAX将数据反馈给一组PHP PDO查询函数。 虽然输入将在表单发送之前在表单上进行验证,但我不想完全依赖于此。

我在问什么:

我所追求的是一些检查传递的PHP参数类型与传递数据的字段类型兼容的方法。 目前我不得不使用一大堆if else语句依次检查每个值并抛出异常(如果没有),所以我想知道是否有人知道更简单的方法来检查给定的PHP类型是否兼容给定的MySQL字段类型。 我敢肯定这一定是以前遇到过的一个问题,如果有人能提出解决方案的话,它会为我节省大量的编码并且非常感激。

提前致谢

1 个答案:

答案 0 :(得分:0)

你说错了。
表结构不是表示数据格式,而是表示应用程序逻辑。 比如,有一个字符串应该只包含a-z字母。你不能从字段类型告诉它。
是的,有些格式可以轻松验证,例如数据或整数,但它们仅仅是例外,并没有多大帮助。

大部分时间表单验证确实是一个带有自定义验证的长代码,您无法避免它。但是,如果验证失败,我不会抛出异常,因为它被认为对于显示发生的所有错误更加用户友好,而不仅仅是一个。

如果你仍然需要一些自动检查 - 寻找一些ORM,这确实会做一些验证...在模型中编写更多代码的代价,而不是你现在用你的验证写的:)