PHP简单实现“相关文章推荐”功能的方法

      通常在做内容网站的时候,需要在每一篇文章中出现与该文章相关的文章列表。对于大多数人来说,使用的方法通常是:建立一个关键词列表,判断每篇文章包含有那些关键词,最后根据关键词找出与某篇文章最相关的文章。对于内容比较复杂的网站,确定关键列表词显然会比较麻烦。

      具体思路:从文章列表中取出所有的文章标题,将所有的文章标题都同当前标题对比,将对比结果生成一个数组,按照相似度的大小由大到标题,利用similar_text将这些文章标题同原文章标题做对比,按标题的相似程度重新排列标题,就得到了与原文章相似的文章列表。 

     关键函数:

   

<?php
 int similar_text ( string $first, string $second[, float $percent] ) 
?>

    它返回的是两个字根串的相同字节数。 

<?php
/**
     * 获取相关
     * @param  [type] $title    当前标题
     * @param  [type] $arr_title 需要查找的数组
     * @return [type]    array()  按照相关程度与$title最相关的数组
     */
    public function getSimilar($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 , $persent); 
        }
        arsort($arr_similar); //按照相似的字节数由高到低排序
        reset($arr_similar); //将指针移到数组的第一单元
        $index = 0;
       foreach($arr_similar as $old_index=>$similar){
        $new_title_array[$index] = $arr_title[$old_index];
        $index++;
        }
        return$new_title_array;
    }

   

 

展开阅读全文

没有更多推荐了,返回首页