私はgroupNameによってソートされている多次元配列を持っています(パーツは正常に動作します)。各グループの中には値(groupName、firstName、lastNameなど)があります。基本的に私はfirstNameということで、この多次元配列内の各グループをソートするためにしようとしていると私はわからないんだけどどこから始めれば:(ここに私のmutidimensional配列です:。PHPでfirstNameで多次元配列をソートするには?
: function group_assoc($array, $key)
{
$array_of_groups = array();
foreach ($array as $value) {
$array_of_groups[$value[$key]][] = $value;
}
return $array_of_groups;
}
$somearray = array(
array('groupName' => 'Group1', 'phoneNumber' => 13037777777, 'firstName'=>'Jeff','lastName' => 'Jeff'),
array('groupName' => 'Group2', 'phoneNumber' => 13033213453, 'firstName'=>'Zumia','lastName' => 'Brown'),
array('groupName' => 'Group3', 'phoneNumber' => 13030098342, 'firstName'=>'Junior','lastName' => 'White'),
array('groupName' => 'Group2', 'phoneNumber' => 13039899231, 'firstName'=>'Ana','lastName' => 'McLwius'),
array('groupName' => 'Group1', 'phoneNumber' => 13033422109, 'firstName'=>'first','lastName' => 'last'),
array('groupName' => 'Group3', 'phoneNumber' => 13033222098, 'firstName'=>'Junior','lastName' => 'Smith')
);
$account_requests = group_assoc($somearray, 'groupName');
print_r($account_request);
と配列を印刷し、私はこれを取得します
Array
(
[Group1] => Array
(
[0] => Array
(
[groupName] => Group1
[phoneNumber] => 13037777777
[firstName] => Mike
[lastName] => Jeff
)
[1] => Array
(
[groupName] => Group1
[phoneNumber] => 13033422109
[firstName] => Ben
[lastName] => Morris
)
)
[Group2] => Array
(
[0] => Array
(
[groupName] => Group2
[phoneNumber] => 13033213453
[firstName] => Zumia
[lastName] => Brown
)
[1] => Array
(
[groupName] => Group2
[phoneNumber] => 13039899231
[firstName] => Ana
[lastName] => McLwius
)
)
[Group3] => Array
(
[0] => Array
(
[groupName] => Group3
[phoneNumber] => 13030098342
[firstName] => Junior
[lastName] => White
)
[1] => Array
(
[groupName] => Group3
[phoneNumber] => 13033222098
[firstName] => Junior
[lastName] => Smith
)
)
)
私はそれは単純な配列(多次元配列ではない)であった場合、私はちょうど行うことができます知っている?!
usort($peopleArray, function ($v1, $v2) {
return strcmp($v1['firstName'], $v2['firstName']);
});
これを実現する方法上の任意のアイデアください事前のおかげでたくさん
を並べ替えることができますが、元の配列を提供することができます最初のグループ毎に行を必要としますprint_rではなく – Kld
@Kldはい質問を更新しました。それを見てください。どうもありがとう!! – progx
最初にグループ化し、各グループを並べ替えます。どうしたの? –