Я использую Similar_text, чтобы найти, какая строка имеет наибольшее значение, похожее на ввод.
Я пытался использовать rsort
, чтобы получить наибольшее значение, но как мне получить строку с наибольшим значением?
$similarities = [];
$input = "makanan daerah";
$type = array('pakaian','senjata','makanan', 'tarian');
foreach ($type as $value) {
similar_text($input, $value, $percent);
$similarities[$value] = $percent;
}
rsort($similarities);
echo($similarities[0]);
Жду выход makanan
но единственный вывод, который я могу отобразить, это процентное значение 66.6667
Мы можем попробовать использовать asort
для сортировки ассоциативного массива терминов и процентов по последнему. Затем получите доступ к последнему ключу, который должен совпадать с ключом, имеющим самый высокий процент:
$similarities = [];
$input = "makanan daerah";
$type = array('pakaian','senjata','makanan', 'tarian');
foreach ($type as $value) {
similar_text($input, $value, $percent);
$similarities[$value] = $percent;
}
asort($similarities);
print_r($similarities);
end($similarities);
$key = key($similarities);
var_dump($key);
Array
(
[senjata] => 19.047619047619
[tarian] => 30
[pakaian] => 47.619047619048
[makanan] => 66.666666666667
)
string(7) "makanan"