php简单实现“相关文章推荐”功能

核心函数:  similar_text()

思路:从文章列表中取出所有文章的标题,构成一个文章数组,将所有文章的标题同当前文章的标题对比,将对比结果生成一个相似度数组,按照相似度的数组的“值"将此数组降序排序,循环相似度数组根据"键"的次序依次取出文章数组对应的"键"的值构成推荐数组,可以将总的推荐数组截取前三,选出相似度排名前三的文章。

不说废话,直接上代码。

//相关文章推荐的方法

    public function recommend(){

        header("Content-type: text/html; charset=utf8");

        $title = "php从入门到放弃(基础篇+实战)";

        //所有文章数组

        $arr_title = array("php入门与实战","php基础入门","php核心编程","php设计模式","php实战详解(基础篇)");

        //构成相似度数组

        for($i = 0 ; $i < count($arr_title); $i++){

            $similar_num[$i] = similar_text($title,$arr_title[$i]);

        }

        //按照相似度大小的值升序排列

        arsort($similar_num);

        //取出排序后对应键的文章标题构成推荐文章数组

        foreach($similar_num as $k => $v){

            $commned_arr[] = $arr_title[$k].'---相似度为---'.$similar_num[$k];

        }

        //选出相似度为前3的文章

        print_r(array_slice($commned_arr,0,3));

    }

最后打印的结果:

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 7月14日 今天,帮别人拍了好多好漂亮的照片,忽然觉得自己好有拍照的潜质!没有这几天学拍照的课题,也许我还不会去注...
    happyMia阅读 194评论 0 0
  • 拖延四个原因: 1.对成功信心不足; 2.讨厌被人委派任务; 3.注意力分散和易冲动; 4.目标和酬劳太过遥远。 ...
    kinggenesis阅读 178评论 0 0
  • 个人理解总结,有不对的地方欢迎纠正啊 喵喵 应用场景 实时展示类页面,如股票信息,火车票余票,医疗设备读取信息,即...
    前端小宇阅读 441评论 0 1
  • 正确认识黑头① 油脂混杂着堆积的大量死皮细胞沉淀堵在毛孔出不来,冒出的头和空气相遇,被氧化,就形成了黑头。所以,清...
    蓉蓉姑娘阅读 623评论 2 0