2 回答
TA贡献1799条经验 获得超9个赞
您可以使用 Php 函数levenshtein来衡量您的搜索词与给定字符串的相似程度。对于多维数组中的每个项目,您可以使用 levenshtein 函数计算相似度。相似度可以与原始字符串一起存储在一个数组中。然后可以对数组进行排序以获得排序的搜索结果。可以使用以下代码:
function GetSortedSearchResults($options, $search_term) {
$sorted_results = array();
for ($count = 0; $count < count($options); $count++) {
$similarity = levenshtein($options["label"], $search_term);
$sorted_results[$similarity] = $options["label"];
}
ksort($sorted_results);
return array_values($sorted_results);
}
TA贡献1712条经验 获得超3个赞
function searchForId ($id, $array) {foreach ($array as $key => $val) {if ($val['label'] === $id) {return $key;}}return null;} $ response[] = array("category"=>'cat_name',"label"=>'East Melbourne');$response[] = array("category"=>'cat_name',"label"=>'Melbourne' );$response[] = array("category"=>'cat_name',"label"=>'West Melbourne');$id = searchForId('Melbourne', $response);$newArr[]=$response[ $id];unset($response[$id]);$newArr1=array_merge($newArr,$response);echo "";print_r($newArr1);exit;
- 2 回答
- 0 关注
- 150 浏览
添加回答
举报