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

以上就是本次介绍的全部知识点内容,感谢大家的学习和对我们的支持。

(0)

相关推荐

  • php 人员权限管理(RBAC)实例(推荐)

    php-人员权限管理(RBAC) 权限管理可以想做vip的功能,普通用户和vip用户的功能是不一样的,大致会用到五张表:用户表.角色表.功能表,还有他们之间互相关联的表:用户与角色表.角色与功能表 我用到的五张表如下: 一. 首先写的是管理员页面 1.用下拉列表显示用户名 <div> <select id="user"> <?php require"../DBDA.class.php"; $db = new DBDA(); $sql =

  • php获取数据库结果集方法(推荐)

    PHP经常要访问数据库提前数据库里面的数据,那么该怎么样去提前数据呢? 提取数据库代码如下: <?php include("conn.php");//数据库连接 $sql="select* from study_sql";//查询数据库表名为study_sql所有的数据记录 $res=mysql_query($sql);//向数据库发送一条sql语句 //$arr=mysql_fetch_row($res);//获取数据库中的第一条信息 echo '<t

  • 使用PHP连接数据库实现留言板功能的实例讲解(推荐)

    PHP实现留言板功能: 1 首先是登录页面: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>留言板登录</title> <script src="bootstrap/js/jquery-1.11.2.min.js"></script> <script src="bootstrap/j

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

    利用similar_text将这些文章标题同原文章标题做对比,按标题的相似程度重新排列标题,就得到了与原文章相似的文章列表. <?php $demo_title= "简明现代魔法"; $demo_arr_title= array("简单易懂的现代魔法","简单明了的现代魔法","简明扼要的古代魔法","不简单的现代魔法","很难懂的现代魔法"); $new_array= getSi

  • Jquery实现select multiple左右添加和删除功能的简单实例

    项目要实现这样的一个功能(如下图所示):选择左边下拉列表框中的选项,点击添加按钮,把选择的选项移动到右边的下拉列表框中,同样的选择右边的选项,点击删除按钮,即把选择的选项移动到左边的下拉列表框中.相信用js很多朋友都写过,下面是我用jQuery来实现这样的功能的. 具体代码如下: <center> <table> <tr align="center"> <td colspan="3"> 选择 </td> &

  • jquery插件方式实现table查询功能的简单实例

    1. 写插件部分,如下: ;(function($){ $.fn.plugin = function(options){ var defaults = { //各种属性,各种参数 } var options = $.extend(defaults, options); this.each(function(){ //功能代码 var _this = this; }); } })(jQuery); 附上一个例子: ;(function($){ $.fn.table = function(optio

  • 仿百度换肤功能的简单实例代码

    效果:(换肤出来一个div,选择你想要的图片,作为网页背景,保存) 要点:cookie保存状态 html代码: <body> <div id="header"> <div id="header_con"> <div class="dbg"><a href="javascript:;" onclick="showImgBox()">换肤</a&

  • JQ图片文件上传之前预览功能的简单实例(分享)

    1.先准备一个div onchange触发事件 <input type="file" onchange="preview(this)" ></span> <div id="preview"></div> 2.写JS代码 //上传图片之前预览图片 function preview(file){ if (file.files && file.files[0]){ var reader =

  • android 照相功能的简单实例

    在android中,照相功能系统已经提供,在app中可以直接使用.当手机从android play里面下载有照相功能的应用时, 会判断手机是否支持.不支持,不给予下载.照相有几个步骤:1. 声明权限2. 使用Camera照相3. 显示图片 1. 声明权限在manifest里面声明使用Camera: 复制代码 代码如下: <uses-feature android:name="android.hardware.camera" /> 2. 使用Camera照相 在Activit

  • 纯js实现html转pdf的简单实例(推荐)

    项目开发中遇到了一个变态需求,需要把一整个页面导出为pdf格式,而且要保留页面上的所有的表格.svg图片和样式. 简而言之,就是希望像截图一样,把整个页面截下来,然后保存成pdf. 咋不上天呢-- 查了一下,能够实现html转pdf的方法还是挺多的,大概有以下几种: 1.大部分浏览器就有这个功能.然而我们客户要的可不是这个,人家要的是能够在系统中主动触发的导出为pdf功能,所以这种方案pass. 2.利用第三方工具.我找到了一种利用wkhtmltopdf这种工具来导出的方案,自己在我们的项目中试

  • Java 实现随机验证码功能简单实例

    Java 实现随机验证码功能简单实例 现在许多系统的注册.登录或者发布信息模块都添加的随机码功能,就是为了避免自动注册程序或者自动发布程序的使用. 验证码实际上就是随机选择一些字符以图片的形式展现在页面上,如果进行提交操作的同时需要将图片上的字符同时提交,如果提交的字符与服务器session保存的不同,则认为提交信息无效.为了避免自动程序分析解析图片,通常会在图片上随机生成一些干扰线或者将字符进行扭曲,增加自动识别的难度. 在这里,我们使用servlet来实现随机验证码的实现.  实现代码: p

  • JS判断是否在微信浏览器打开的简单实例(推荐)

    最近做很多HTML5的项目,很多页面会通过微信微博等SNS分享出去.在分享页面上提供公司APP的下载.但是在很多应用的浏览器中,点击下载链接无法下载应用.那么针对这些浏览器我们需要给用户提示从safari或者系统自带的浏览器打开分享页面.通过js就可以判断当前页面是在什么浏览器打开的. 以下是一段示例代码,注释中表明了通过JS如何判断是否在微信浏览器打开,是否在QQ空间浏览器,是否在新浪微博打开.当然可以做得更完善一点,再加上判断是在移动设备打开还是在PC端浏览器打开的,更加细分一点,可以判断是

  • PHP 读取大文件并显示的简单实例(推荐)

    使用PHP读取日志文件,当文件比较大的时候,会报内存不足,因此应该部分读取,读取指定的行数的数据 PHP代码: <?php class Test{ //日志路径 const LOG_PATH="E:\phpServer\Apache\logs\error.log"; const NGINX_LOG_PATH="E:\phpServer\\nginx\logs\error.log"; //显示的行数 const PAGES=50; public static f

随机推荐