搜索来自mysql查询结果的数字列表

时间:2012-02-09 05:29:11

标签: php

$save_planet3 = "SELECT saver_id FROM save_planet 
                WHERE saver_id = '".($_SESSION['user_id'])."' 
                AND map = 1 ORDER BY time_saved DESC";
$save_planet2 = mysql_query($save_planet3) or trigger_error("SQL", E_USER_ERROR);   

while ($list = mysql_fetch_array($save_planet2)) { 
  $saver_id = $list['saver_id']; 

当我echo $saver_id我得到一个数字列表

3112 3112 3112 3112
我正在尝试检查$planet_id是否等于这些数字中的任何一个

所以我认为唯一的方法是先将这些数字放入一个带数字的数组中。所以我试图将它爆炸,但它并没有给每个人注意到我注意到的不同密钥。

$check = explode(",", $saver_id);
print_r($check); 


Array ( [0] => 3112 )
Array ( [0] => 3112 )
Array ( [0] => 3112 )
Array ( [0] => 3112 )

一旦我在一个可行的阵列中得到它,我应该能够做到这一点

foreach($array as $key => $value) {    
  if ($planet_id == $value) { 
  //something happends

1 个答案:

答案 0 :(得分:1)

为什么不将结果集值存储到while循环内的数组中?

$arr = array();
while ($list = mysql_fetch_array($save_planet2)) { 
  $saver_id = $list['saver_id']; 
  $arr[] = $saver_id;
}

print_r($arr);

您还可以使用in_array()检查值的存在。