我在从具有特定值的行中查询多个值时遇到问题。如果“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);
关于来自行中具有多个值的表的 PHP SQL 查询 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26738118/