我有几个关于使用PHP和MySQL的安全数据存储的问题。使用MySQL表中的列信息来输入PHP数据
首先,我在查询或保存任何数据到数据库之前使用PDO并准备好语句,特别是Digg创建的包装器。
它建议在将所有数据发送到预准备语句之前先对所有数据进行类型转换。
这是必要的吗?如果是这样的话......
有没有一种方法可以检索特定表的列信息,在实际发送之前,根据表的字段信息构建一个自动类型化数据的“过滤器”它到了现场?
例如,假设我有一个表叫玩家,这些列:
- ID - INT(11)
- 手柄 - VARCHAR(100)
- 国家 - 炭( 2)
- TEAM_ID - INT(11)
,之前我保存或更新一出戏呃,假设在保存数据之前对数据进行类型转换是一种很好的做法,那么是否有一种函数会自动将MySQL数据类型映射到PHP数据类型?
这样我就可以做类似settype($ my_var,$ data_type_from_matching_table_field)的东西。
或者我应该用一堆开关盒创建一个类吗?
是的我听说过,我不是粉丝。 PHP自动类型转换中的大多数值,即字符串“1”在内部处理为int 1.第二个PDO具有多种绑定值的方法,用于准备好的语句对象,并且这些方法都支持您希望添加的类型。 PDO :: PARAM_STR,PDO :: PARAM_INT等。严格地说,是的,这是一个好习惯;) – dbf