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