如何使用mysqli_stmt_bind_param为NOT IN语句绑定逗号分隔的ID?

时间:2017-12-14 20:02:44

标签: php mysql

我认为这与各种重复的问题不同,因为不完全解决这个用例,我的最终解决方案可能对某人有用。

按照建议在PHP中使用准备好的MYSQL语句。

  1. 以ID $id_array = array(1,2,3,4)
  2. 的典型数组开始
  3. 使用implode转换为逗号分隔的字符串 $id_array = implode(', ', $id_array);
  4. 查询SELECT * FROM Table WHERE Id NOT IN ? LIMIT ?
  5. 绑定mysqli_stmt_bind_param($stmt, 'si', $id_array, $limit);
  6. 如果我删除第一个绑定并将其放入SQL语句中,则查询工作正常。但是我正在用逗号分隔值的绑定做一些正确的事情,将它传递到ID列表到MYSQL查询的NOT IN部分。

    最终,我的解决方案需要构建一个函数来动态构建一个传递到params函数的call_user_func_array数组。

0 个答案:

没有答案