Tim*_*Tim 5 php sorting laravel-5
我知道这次被问过很多次,但我还是找不到防弹解决方案.
这是我的数组,需要按字母顺序排序.
setlocale(LC_ALL, 'sl_SI.utf8');
$a = [
'?' => [...],
'a' => [...],
'š' => [...],
'u' => [...]
]
Run Code Online (Sandbox Code Playgroud)
我怎样才能按键排序?
从这个例子中引用: - 在PHP中使用特殊字符对数组进行排序
说明:-
使用array_keys()方法获取数组键
基于iconv()AND strcmp()功能对键进行排序
迭代排序的键数组并从初始数组中获取它们的相应值.将此键值对保存到结果数组中
如下所示: -
<?php
setlocale(LC_ALL, 'sl_SI.utf8');
$a = [
'?' => [12],
'a' => [23],
'š' => [45],
'u' => [56]
];
$index_array = array_keys($a);
function compareASCII($a, $b) {
$at = iconv('UTF-8', 'ASCII//TRANSLIT', $a);
$bt = iconv('UTF-8', 'ASCII//TRANSLIT', $b);
return strcmp($at, $bt);
}
uasort($index_array, 'compareASCII');
$final_array = [];
foreach($index_array as $index_arr){
$final_array[$index_arr] = $a[$index_arr];
}
print_r($final_array);
Run Code Online (Sandbox Code Playgroud)
输出: - https://eval.in/990872
参考:-
| 归档时间: |
|
| 查看次数: |
305 次 |
| 最近记录: |