PHP. Подсчет количества совпадений слов в массиве
Данный материал предоставлен сайтом
PacificSky.Ru исключительно в ознакомительных целях. Администрация не несет ответственности за его содержимое.
Представим момент, что нам необходимо подсчитать количество совпадений слов в массиве.
В данной статье опубликована функция, которая выполняет данное действие.
Разбор функции:
Первый параметр функции, является массив слов, который необходимо подсчитать.
Второй параметр отвечает за минимальное количество букв в словах, по которым необходимо вести подсчет (по умолчанию минимальное количество букв - 3).
Функция возвращает массив сортированный в обратном порядке.
Ключами данного массива являются сами слова.
В значение массива будет записано количество совпадений слова в массиве.
Пример работы функции:
Будем считать, что нам необходимо работать с данным массивом слов:
Выполняем проверку:
На экране будет отображен следующий результат:
В данной статье опубликована функция, которая выполняет данное действие.
Разбор функции:
Первый параметр функции, является массив слов, который необходимо подсчитать.
Второй параметр отвечает за минимальное количество букв в словах, по которым необходимо вести подсчет (по умолчанию минимальное количество букв - 3).
function countWords($arrayWords, $minWordLenght = 3) {
$tmp_arr = [];
foreach ($arrayWords as $val) {
if (strlen($val) >= $minWordLenght) {
$val = mb_strtolower($val);
if (array_key_exists($val, $tmpArr)) {
$tmpArr[$val]++;
} else {
$tmpArr[$val] = 1;
}
}
}
arsort($tmpArr);
return $tmpArr;
}
Функция возвращает массив сортированный в обратном порядке.
Ключами данного массива являются сами слова.
В значение массива будет записано количество совпадений слова в массиве.
Пример работы функции:
Будем считать, что нам необходимо работать с данным массивом слов:
$array = ["Привет", "Как", "Твои", "Дела", "Твои", "Дела", "Твои", "Дела", "Твои", "Дела", "Привет"];
Выполняем проверку:
var_dump(countWords($array));
На экране будет отображен следующий результат:
array(4) { ["твои"]=> int(4) ["дела"]=> int(4) ["привет"]=> int(2) ["как"]=> int(1) }
Новость отредактировал: Fixlix - 17-12-2017, 19:47
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.