• PHP简单实现“相关文章推荐”功能的方法(此方法不是自创)


    1, 所用的函数:int similar_text ( string $first, string $second[, float $percent] )
    利用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
    4
    与[简明现代魔法]最相关的前三个文章是:
    1:简单明了的现代魔法
    2:简单易懂的现代魔法
    3:简明扼要的古代魔法
     
     
     
     
     
  • 相关阅读:
    CodeForces 697B Barnicle 模拟
    15.三数之和
    167.两数之和
    209.长度最小子数组-sliding window
    COMP9313 Week9a-0
    树总纲(To be continued)
    COMP9517 Week8
    COMP9313 week8b Pipeline
    94. 二叉树的中序遍历
    COMP9313 Week8 Classification and PySpark MLlib
  • 原文地址:https://www.cnblogs.com/qianlizeguo/p/6834531.html
Copyright © 2020-2023  润新知