请我有表'数据'
status name
------------
b X
a E
a B
b I
我想得到这样的数组:
array(
'a'=> array('B', 'E'),
'b'=> array('I', 'X')
)
我应该如何编写查询来获取此信息?如您所见,所有内容都应按字母顺序排序。
答案 0 :(得分:0)
function sort_status_name($data) {
$pole = array();
foreach ($data as $item)
{
if (array_key_exists($item->status, $pole)) {
if (!in_array($item->name, $pole[$item->status])) {
array_push($pole[$item->status], $item->name);
}
}
else
{
$pole[$item->status] = array();
array_push($pole[$item->status], $item->name);
}
}
return $pole;
}