php实现推荐功能的简单实例

yipeiwu_com7年前PHP代码库

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

以上就是本次介绍的全部知识点内容,感谢大家的学习和对【宜配屋www.yipeiwu.com】的支持。

相关文章

PHP中的array数组类型分析说明

php的数组的key 可以是string类型也可以是integer类型。如果key为一个float类型,会自动的转化为integer类型。 如果没有为一个value指定一个key,int...

PHP memcache扩展的三种安装方法

关于比较请看http://code.google.com/p/memcached/wiki/PHPClientComparison。推荐使用新的memcached,安装方法基本同下面,只...

深入file_get_contents与curl函数的详解

有些主机服务商把php的allow_url_fopen选项是关闭了,就是没法直接使用file_get_contents来获取远程web页面的内容。那就是可以使用另外一个函数curl。下面...

php中使用接口实现工厂设计模式的代码

接口在php只能起到约束类的定义作用,虽不像c#/java那么直观,但基于oop的封装要求,使用接口可以提高程序的可扩展性,如实现代理设计模式。 复制代码 代码如下: <?php...

php通过pecl方式安装扩展的实例讲解

1、安装pecl及创建快捷键(若安装php时已带可忽略这步安装步骤) # cd /usr/local/php/bin/ //可查看是否已带有pecl # wget http://...