【发布时间】:2015-12-10 08:31:09
【问题描述】:
我有一个 DB 类,它处理所有的查询都将对数据库进行 我有 mysqli 准备工作正常。 bind_param 也可以正常工作,但问题是我想动态定义变量类型。 这是我的代码
public function query($sql, $params = array()){
$this->_error = false;
if($this->_query = $this->_mysqli->prepare($sql)){
$x = 1;
if(count($params)){
foreach($params as $param){
$this->_query->bind_param($x, $param);
$x++;
}
}
IN PDO 拳头参数定义了我猜的位置,所以这个函数通过每次设置 X = 1 和 x++ 运行良好,
但在bind_param 第一个参数定义类型我猜
正如 php.net 手册所说
如果用户推动我设置的积分值,有什么办法吗
x = 我
对于字符串
x = 小号
依此类推,适用于所有 4 种类型...
喜欢
if((int)$param->){
x = i;
}
有想法的人吗?
提前致谢
【问题讨论】:
-
在 PDO 中,我通过在开始时说 x = 1 表示第一个占位符来完成它。最后我说 x++ 意味着下一次 x = 2 所以发送时间它将绑定到第二个参数。但我同意你关于 mysqli 的看法,所以我可以在下面使用你定义的方法吗?这完全替代了我的问题?
标签: php mysqli prepare bindparam