我在 PHP 脚本中使用 mysqli_stmt::bind_param
函数。
不方便关心你传递的参数类型是“d”还是类型“s”或者其他什么。为什么总是对字符串、整数和 double 使用类型“s”是不好的?
据我了解,mysql会在需要时自行处理类型转换。
最佳答案
按照你的说法,这确实并不重要。唯一的问题是 mysql 在 strict mode 中运行.
尽管如此,事实上,开发人员通常应该始终了解查询部分的类型。
因为它不仅可以是字符串或数字,还可以是标识符或其他东西。
因此,最好使占位符类型提示,让驱动程序根据查询部分类型应用正确的格式,使查询看起来像这样:
SELECT * FROM table WHERE field=?s AND id IN(?a) ORDER BY ?n LIMIT ?i
关于php - 为什么关心 mysqli_stmt::bind_param 中的类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14546156/