我想对从 mysql 数据库返回的数组进行分组。我已经命名了数组$item_info
,我想将它分组folder_id
。
首先,两个相关的问题:
- 正在执行单个查询以获取下面的数据并始终(或很可能)比 2 个单独的查询(一个涉及所需
GROUP BY
的查询,另一个不涉及)更快地创建新的数组键。 - 从我在 SO 上读到的内容看来,最好让 MySQL 查询保持简单并使用 PHP 整理数据。对一般哲学的评论?
这是我的数据库返回的内容:
$item_info=array(
array("id"=>"1", 'folder_id'="1", "img"=>"/images/button_01.gif"),
array("id"=>"2", 'folder_id'="1", "img"=>"/images/button_02.gif"),
array("id"=>"3", 'folder_id'="2", "img"=>"/images/button_03.gif"),
array("id"=>"4", 'folder_id'="2", "img"=>"/images/button_04.gif"),
array("id"=>"5", 'folder_id'="3", "img"=>"/images/button_05.gif"),
array("id"=>"6", 'folder_id'="3", "img"=>"/images/button_06.gif")
);
这是我想排列的方式:
$item_info=array(
array(
array("id"=>"1", 'folder_id'="1", "img"=>"/images/button_01.gif"),
array("id"=>"2", 'folder_id'="1", "img"=>"/images/button_02.gif")
),
array(
array("id"=>"3", 'folder_id'="2", "img"=>"/images/button_03.gif"),
array("id"=>"4", 'folder_id'="2", "img"=>"/images/button_04.gif")
),
array(
array("id"=>"5", 'folder_id'="3", "img"=>"/images/button_05.gif"),
array("id"=>"6", 'folder_id'="3", "img"=>"/images/button_06.gif")
));