用php数组的Mysql SELECT语句

Var*_*run 3 php mysql

我在php中创建了一个包含一些USER_ID的数组.我正在使用具有名为USERS的表的mysql数据库.现在我想只从USERS中选择那些user_id与数组中的USER_ID匹配的行.

提前致谢

Mic*_*ski 7

implode()将数组放入INSQL中的子句:

$sql = "SELECT * FROM tbl WHERE USER_ID IN (" . implode(",", $user_ids) . ");";
Run Code Online (Sandbox Code Playgroud)

这假设您的用户ID是整数,而不是必须引用和转义的字符串.在这种情况下,

$sqlids = array();
foreach ($user_ids as $id) {
  // Escape and quote each id
  $sqlids[] = "'" . mysql_real_escape_string($id) . "'";
}
$sql = "SELECT * FROM tbl WHERE USER_ID IN (" . implode(",", $sqlids) . ");";
Run Code Online (Sandbox Code Playgroud)