6

我想通过id查找数据,我有一个这样的数组

$result= 

 Array
 (

   [3] => 536371014
   [38] => 1435902884
   [53] => 100000224980743
)

用户 _id 是

  [3], [38], [53]

在我的用户表中

    user_id    name 
     3          usii
     38         test
     53         test 2

我想通过用户 ID 查找所有数据,我如何使用索引的结果集用户 ID 来做到这一点,我尝试了很多但没有成功,请帮我这样做,提前致谢。

4

3 回答 3

6

像这样使用 foreach

foreach($result as $val) {

   echo $val[$user_id];
}
于 2013-05-07T07:48:39.793 回答
3

像这样的东西应该可以工作(残酷的伪代码)

in_list = implode(", ", array_keys($result));
$all_users = mysql.query("select * from user_table where user_id in (" . in_list . ");";

array_keys 应该为您提供一个仅包含使用的索引(3、38 和 53)的数组,
其中包含“,”,因为胶水应该为您提供适合 mysql IN 条件的类似“3,38,53”的字符串。

于 2013-05-07T07:52:21.250 回答
2
$user_ids = implode(",",array_keys($result));
$query = "SELECT * FROM usertable WHERE user_id IN (".$user_ids.")";
于 2013-05-07T07:53:05.660 回答