我有这样的数组 我必须按值排序
(数组键不是英文!)
Array
(
[مدیرکل] => 2
[پیش] => 2
[بینی] => 2
[و] => 33
[هشدار] => 2
[سریع] => 2
[سازمان] => 2
[هواشناسی] => 2
[از] => 7
[آغاز] => 1
[بارش] => 10
[برف] => 7
[باران] => 4
[در] => 10
[پایتخت] => 1
[طی] => 4
[24] => 1
[ساعت] => 1
[آینده] => 3
[خبر] => 1
[داد] => 1
[احد] => 1
[وظیفه] => 3
[با] => 5
)
33必须是第一个,24和10和7等
但是当我使用sort
或asort
或uksort
时,它只返回1 !!!
1
这些函数和数组是否有任何问题,以非英语作为键!?
代码:
$nextArray = array_count_values($arr1);
$nextArray = sort($nextArray);
print_r($nextArray);
答案 0 :(得分:0)
好的,让我们看看:
$nextArray = array_count_values($arr1); // this is an array
$nextArray = sort($nextArray); // as *sort function return bool you overwrite array value with bool value
print_r($nextArray);
正确的代码应该是:
$nextArray = array_count_values($arr1);
sort($nextArray);
print_r($nextArray);