天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

PHP簡單實現“相關文章推薦”功能的方法

通常在做內容網站的時候,需要在每一篇文章中出現與該文章相關的文章列表。對于大多數人來說,使用的方法通常是:建立一個關鍵詞列表,判斷每篇文章包含有那些關鍵詞,最后根據關鍵詞找出與某篇文章最相關的文章。對于內容比較復雜的網站,確定關鍵列表詞顯然會比較麻煩。

本文介紹了與以往方法不同的similar_text(php4,php5)函數來方便的達到我們的預期要求。具體的思路是:從文章列表中取出所有的文章標題,將所有的文章標題都同當前標題對比,將對比結果生成一個數組,按照相似度的大小由大到標題,利用similar_text將這些文章標題同原文章標題做對比,按標題的相似程度重新排列標題,就得到了與原文章相似的文章列表

這個思路用到的關鍵函數是:

int similar_text ( string $first, string $second[, float $percent] )

它返回的是兩個字根串的相同字節數。

按照這個思路,我們建立如下的函數,這個函數的功能是把$arr_title數組按照同$title相似的的順序重新排列數組。

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

有些需要注意的地方

關于similar_text速度,有人做過這個一個測試,結果是:

The speed issues for similar_text seem to be only an issue for long sections of text (>20000 chars).

I found a huge performance improvement in my application by just testing if the string to be tested was less than 20000 chars before calling similar_text.

20000+ took 3-5 secs to process, anything else (10000 and below) took a fraction of a second. Fortunately for me, there was only a handful of instances with >20000 chars which I couldn't get a comparison % for.

如果要直接使用正文作對比速度可能會比較慢。

據說這個函數用于英文的效果不太好(感興趣的讀者可以自行嘗試)。用于英文時可以將英文句子用空格分開成多個單詞后再寫一個類似于similar_text的函數。

另外,如果句子中含有比較多“的”、“了”等非關鍵詞字符時,得到的結果可能會不太理想。

php技術PHP簡單實現“相關文章推薦”功能的方法,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: av老司机色爱区综合 | 偷偷鲁手机在线播放AV | 国产精品一国产AV麻豆 | 9国产露脸精品国产麻豆 | 日本国产精品无码一区免费看 | 男男gaygay拳头 | 国产在线高清亚洲精品一区 | 含羞草在线 | 8x8x我要打机飞在线观看 | 国产99对白在线播放 | 丰满的女朋友韩国版在线观看 | 最近的2019中文字幕HD | 护士WC女子撒尿 | 欧洲老妇人bb | 艳鉧动漫1~6全集观看在线 | 国产成人在线视频免费观看 | 亚洲欧洲日产国码久在线 | 久久综合一个色综合网 | 91亚洲精品福利在线播放 | 国产精品久久久久精品A片软件 | 成人在免费视频手机观看网站 | 无码专区无码专区视频网网址 | 亚洲色 图 | 久久久无码精品亚洲欧美 | 草莓西瓜樱桃香蕉直播视频 | 亚洲精品电影久久久影院 | 97无码欧美熟妇人妻蜜 | 99久久香蕉 | 日韩精品亚洲专区在线影院 | 99国产精品 | 亚洲乱码国产乱码精品精98 | 国产AV无码熟妇人妻麻豆 | yy8090韩国理伦片在线 | 成人亚洲视频在线观看 | 5G年龄确认我已满18免费 | 国产精品18久久久久久欧美网址 | 色偷偷网站 | 精品淑女少妇AV久久免费 | 在线精品一卡乱码免费 | 中文字幕亚洲视频 | 国产精品一久久香蕉国产线看 |