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:簡明扼要的古代魔法
 
 
 
 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM