【发布时间】:2016-05-09 19:13:49
【问题描述】:
如何按最深嵌套数组中每个集合的总和值对这个数组进行排序?
$arr = Array(
Array(
'I am the first string.',
Array(
Array( 'round', 1, 1 ),
Array( 'rhythm', 1, 1 )
)
),
Array(
'I am the second string',
Array(
Array( 'cps', 1, 1 ),
Array( 'Hz', 1, 3 ),
Array( 'hertz', 1, 1 )
)
),
Array(
'I am the third string.',
Array(
Array( 'uucps', 1, 1 ),
Array( 'uuHz', 1, 2 ),
Array( 'uuhertz', 1, 1 )
)
)
);
我需要通过最深集合(第三维)的第三个键的总和值对数组的第二维进行排序。
所以最终结果将如下所示:
$arr = Array(
Array(
'I am the second string',
Array(
Array( 'cps', 1, 1 ),
Array( 'Hz', 1, 3 ),
Array( 'hertz', 1, 1 )
)
),
Array(
'I am the third string.',
Array(
Array( 'uucps', 1, 1 ),
Array( 'uuHz', 1, 2 ),
Array( 'uuhertz', 1, 1 )
)
),
Array(
'I am the first string.',
Array(
Array( 'round', 1, 1 ),
Array( 'rhythm', 1, 1 )
)
)
);
我知道 usort 可能是我最好的选择,但我似乎无法让它适用于我的用例。
【问题讨论】:
-
如果您可以包含您已经尝试过的内容,这可能会有所帮助