2014-11-04 79 views
0

我有一个问题从具有特定值的行查询多个值。如果“id”等于999,我使用下面的SQL代码来获取列“group_id”的值。在“xx_groupmap”表中,ID 999以不同的值显示三次。下面是我的桌子。来自表中的PHP SQL查询ID与行中的多个值

table xx_groupmap 
------------------- 
id | group_id 
------------------- 
999 | 2 
999 | 7 
999 | 8 

下面是我的代码使用

 $db = JFactory::getDbo(); 
     $query = "SELECT group_id FROM xx_groupmap WHERE id = '999'"; 
     $db->setQuery($query); 
     $results = $db->loadObjectList(); 
     foreach ($results as $t) { 
     } 

那么到底什么时候我想返回ID 999的三个值我用这个代码

echo $t->group_id; 

但只输出一个号码。如何使用id 999的三个值构建数组?

回答

3

那是因为,当您处于foreach状态时,$t会始终更新,您将只获得最后的$t。把它们放入一个数组中。

$ids = array(); 
foreach ($results as $t) { 
    $ids[] = $t->group_id; 
} 
var_dump($ids);