Группировать данные по частоте

#php

#php

Вопрос:

Я пытаюсь создать систему отслеживания тенденций, которая отображает, какие ключевые слова находятся в тренде, проверяя их использование. Я смог получить количество вхождений ключевых слов в массив, подобный этому

 $keyword_occurences = array("pheed"=>5, "php"=>7, "love" => 700);
  

Как мне отобразить это в порядке убывания вхождения?

Ответ №1:

Попробуйте использовать функции asort и / или arsort отсортировать ассоциативный массив по значениям.

Ответ №2:

Попробуй sort() . Вы можете указать SORT_NUMERIC для сортировки массива численно. Здесь есть и другие функции сортировки массива.


Если подумать, asort() может быть лучше, учитывая, что он поддерживает индексы. Я не использовал их с ассоциативным массивом, подобным вашему, поэтому я не знаю, как будут вести себя обе функции, но одна должна работать.

Комментарии:

1. Я не думаю, что сортировка будет работать, это ассоциативный массив. asort было бы более подходящим

2. Наиболее правильным будет arsort, поскольку он сортирует в обратном порядке (desc)

3. @Ben Возможно, я редактировал свой вопрос, когда вы вводили свой комментарий. Я включил asort() до того, как вы опубликовали.