我在查询具有特定值的行中的多个值时遇到问题。如果"id"等于999,我将使用下面的SQL代码获取列"group_id"的值。在"xx_groupmap"表中,id 999以不同的值显示三次。下面是我的桌子。
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中的三个值构建数组?
这是因为,当您在foreach中时,$t
总是更新的,而您将只获得最后一个$t
。将它们放入一个数组中。
$ids = array();
foreach ($results as $t) {
$ids[] = $t->group_id;
}
var_dump($ids);