利用similar_text将这些文章标题同原文章标题做对比,按标题的相似程度重新排列标题,就得到了与原文章相似的文章列表。
<?php
$demo_title= "简明现代魔法";
$demo_arr_title= array("简单易懂的现代魔法","简单明了的现代魔法","简明扼要的古代魔法","不简单的现代魔法","很难懂的现代魔法");
$new_array= getSimilar($demo_title,$demo_arr_title);
//print_r($new_array);
echo"与[$demo_title]最相关的前三个文章是:<br/ ";
for($j=0; $j<=2; $j++)
{
echo($j+1).":".$new_array[$j]."<br/ ";
}
//$title当前标题,$arrayTitle为需要查找的数组
functiongetSimilar($title,$arr_title)
{
$arr_len= count($arr_title);
for($i=0; $i<=($arr_len-1); $i++)
{
//取得两个字符串相似的字节数
$arr_similar[$i] = similar_text($arr_title[$i],$title);
}
arsort($arr_similar); //按照相似的字节数由高到低排序
reset($arr_similar); //将指针移到数组的第一单元
$index= 0;
foreach($arr_similaras$old_index= $similar)
{
$new_title_array[$index] = $arr_title[$old_index];
$index++;
}
return$new_title_array;
}
?
程序运行结果:
与[简明现代魔法]最相关的前三个文章是: 1:简单明了的现代魔法 2:简单易懂的现代魔法 3:简明扼要的古代魔法
以上就是本次介绍的全部知识点内容,感谢大家的学习和对ZaLou.Cn的支持。