dit*_*tto 2 php arrays array-key ksort
我想以数字方式对数组进行排序,即188,188-1,188-2,222,222-1,222,-2等.这就是数组当前的样子:
[188-1] => Array
(
[time] => 1
)
[188-2] => Array
(
[time] => 2
)
[188-3] => Array
(
[time] => 3
)
[188] => Array
(
[notes] => frog stand notes
)
[489] => Array
(
[notes] => notes
)
[489-1] => Array
(
[weight] => 10
[reps] => 30
)
[489-2] => Array
(
[weight] => 20
[reps] => 30
)
[489-3] => Array
(
[weight] => 30
[reps] => 30
)
[492-1] => Array
(
[weight] => 500
[distance] => 100000
)
[492] => Array
(
[notes] => more notes
)
Run Code Online (Sandbox Code Playgroud)
我已经尝试了一个ksort,ksort($sorted, SORT_DESC);但是对于带连字符的密钥它不能很好地工作,除非我做错了什么?
您可以使用uksort()with strnatcmp()作为比较功能:
uksort($array, 'strnatcmp');
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
164 次 |
| 最近记录: |