排序数组有错误,没有英文键

时间:2014-01-01 18:21:34

标签: php arrays sorting

我有这样的数组 我必须按值排序

(数组键不是英文!)

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等 但是当我使用sortasortuksort时,它只返回1 !!!

1 

这些函数和数组是否有任何问题,以非英语作为键!?

代码:

$nextArray = array_count_values($arr1);
$nextArray = sort($nextArray);

print_r($nextArray);

1 个答案:

答案 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);