Php codeigniter展平查询结果数组

Php codeigniter展平查询结果数组,php,arrays,codeigniter,Php,Arrays,Codeigniter,我使用Codeigniter中的查询返回属于用户的所有行的ID $this->db->select('id'); $this->db->where('user_id', 99); $query = $this->db->get('my_table'); return $query->result_array(); 这是回报 Array ( [0] => Array ( [id] => 8 ) [1] => Array ( [id] =

我使用Codeigniter中的查询返回属于用户的所有行的ID

$this->db->select('id');
$this->db->where('user_id', 99);
$query = $this->db->get('my_table');
return $query->result_array();
这是回报

Array ( [0] => Array ( [id] => 8 ) [1] => Array ( [id] => 7 ) [2] => Array ( [id] => 6 ) )
是否可以返回一个平面数组,如

Array ( [0] => 8 [1] => 6 [2] => 7 )
?


若你们懒得在每次选择一列时添加几行,那个么你们需要调整Codeigniter。例如添加一些选项或在选择单列时返回展开数组。我建议在下面添加一个选项可以是另一种方法。我不知道这比公认的答案有什么好处

假设您将函数的输出存储在
$result
中。然后,您可以执行以下操作:

array_unshift($result, null);
$transposed = call_user_func_array("array_map", $result);
print_r($transposed);
它会打印出来

数组([0]=>数组([0]=>8[1]=>6[2]=>7))

您可以通过$transposed[0]访问所需内容

数组([0]=>8[1]=>6[2]=>7)


谢谢我希望Codeigner有一个内置函数。将函数的结果存储在变量中不是比为每个循环调用函数更好吗?除非通过引用进行修改,
foreach()
“创建一个副本”并使用它。作为该行为的结果,不会迭代调用
result\u array()
方法@用户2019515
array_unshift($result, null);
$transposed = call_user_func_array("array_map", $result);
print_r($transposed);