php自动获取关键字的方法


Posted in PHP onJanuary 06, 2015

本文实例讲述了php自动获取关键字的方法。分享给大家供大家参考。

具体实现方法如下:

$mincipin=5;//最小词频 

$minlen=4;//关键字最小长度 

tiqukeyword($tiqustr,$minlen,$mincipin); 

function tiqukeyword($tiqustr,$minlen,$mincipin) 

{$strlong=strlen($tiqustr); 

$arr=array(); 

$k=-1; 

for($i=0;$i<($strlong-$mincipin*$minlen);$i++){ 

$end=ceil(($strlong-$i)/$mincipin+$i); 

for($j=$minlen;$j<$end;$j++){$num=0; 

if(($guanjianzi=substr($tiqustr,$i,$j))!==false){ 

$wz=$i+$j; 

$num++;} 

else{break;} 

while($wz<$strlong){if(($wz=strpos($tiqustr,$guanjianzi,$wz))!==false) 

{$num++; 

$wz=$wz+strlen($guanjianzi);} 

else break; 

} 

if($j==$minlen){ 

if($num>=$mincipin){$maxnum=$num;$k++;$str=substr($tiqustr,$i,$j); 

$arr[$k]=array($i,$j,$str,$num,0); 

} 

else{break;} 

} 

else{ 

if($num>=$maxnum){ 

$maxnum=$num; 

$str=substr($tiqustr,$i,$j); 

$arr[$k]=array($i,$j,$str,$num,0); 

} 

else break; 

} 

} 

} 

echo '初步得到的数组:'; 

print_r($arr); 

//echo '<br/><br/><br/><br/>'; 

  

$arrlong=count($arr); 

for($i=0;$i<$arrlong;$i++){ 

$bjarr=$arr[$i]; 

$nowid=$i; 

if($bjarr[4]==1)continue; 

for($j=$i+1;$j<$arrlong;$j++){ 

if($arr[$j][4]==1)continue; 

$qujianks=$bjarr[0]; 

$qujianjs=$bjarr[1]+$bjarr[0]-1; 

$a=$arr[$j][0]; 

$b=$arr[$j][1]+$arr[$j][0]-1; 

if(($bjarr[2]==$arr[$j][2])&&($bjarr[3]>$arr[$j][3]))$arr[$j][4]=1; 

  

if($a<=$qujianks&&$qujianks<=$b&&$a<=$qujianjs&&$qujianjs<=$b) 

{if($bjarr[3]<=$arr[$j][3]){ 

$arr[$nowid][4]=1;$nowid=$j;$bjarr=$arr[$j]; 

} 

} 

elseif($qujianks<=$a&&$a<=$qujianjs&&$qujianks<=$b&&$b<=$qujianjs){ 

$arr[$j][4]=1; 

} 

} 

} 

  

echo '<br/><br/><br/><br/>重叠加标记后的数组:'; 

print_r($arr); 

$jieguoarr=array(); 

for($i=0;$i<$arrlong;$i++) 

{if($arr[$i][4]==0)$jieguoarr[]=$arr[$i]; 

  

} 

echo '<br/><br/><br/><br/>'; 

echo '最后得到的数组:'; 

print_r($jieguoarr); 

}

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
php设计模式 DAO(数据访问对象模式)
Jun 26 PHP
php程序的国际化实现方法(利用gettext)
Aug 14 PHP
php setcookie(name, value, expires, path, domain, secure) 参数详解
Jun 28 PHP
析构函数与php的垃圾回收机制详解
Oct 28 PHP
提高PHP编程效率的方法
Nov 07 PHP
PHP永久登录、记住我功能实现方法和安全做法
Apr 27 PHP
WIN8.1下搭建PHP5.6环境
Apr 29 PHP
大家在抢红包,程序员在研究红包算法
Aug 31 PHP
php实现的微信红包算法分析(非官方)
Sep 25 PHP
PHP内核探索之变量
Dec 22 PHP
PHP函数nl2br()与自定义函数nl2p()换行用法分析
Apr 02 PHP
详解Yii2 rules 的验证规则
Dec 02 PHP
windows7下php开发环境搭建图文教程
Jan 06 #PHP
PHP中$this和$that指针使用实例
Jan 06 #PHP
php缓冲输出实例分析
Jan 05 #PHP
php中fsockopen用法实例
Jan 05 #PHP
php中Socket创建与监听实现方法
Jan 05 #PHP
php实现计数器方法小结
Jan 05 #PHP
php下Memcached入门实例解析
Jan 05 #PHP
You might like
配置php网页显示各种语法错误
2013/09/23 PHP
PHP获取真实客户端的真实IP
2017/03/07 PHP
Prototype使用指南之array.js
2007/01/10 Javascript
JS拖动技术 关于setCapture使用
2010/12/09 Javascript
Javascript异步编程的4种方法让你写出更出色的程序
2013/01/17 Javascript
js中的屏蔽的使用示例
2013/07/30 Javascript
jQuery 三击事件实现代码
2013/09/11 Javascript
JavaScript中实现PHP的打乱数组函数shuffle实例
2014/10/11 Javascript
Vuejs第十二篇之动态组件全面解析
2016/09/09 Javascript
jquery  实现轮播图详解及实例代码
2016/10/12 Javascript
js实现文字跑马灯效果
2017/02/23 Javascript
webpack处理 css\less\sass 样式的方法
2017/08/21 Javascript
手把手教你如何使用nodejs编写cli命令行
2018/11/05 NodeJs
jQuery实现左右两个列表框的内容相互移动功能示例
2019/01/27 jQuery
详解vue-cli@2.x项目迁移日志
2019/06/06 Javascript
微信小程序动态设置图片大小的方法
2019/11/21 Javascript
[02:27]DOTA2英雄基础教程 莱恩
2014/01/17 DOTA
Python下载懒人图库JavaScript特效
2015/05/28 Python
Python matplotlib画图实例之绘制拥有彩条的图表
2017/12/28 Python
python中的for循环
2018/09/28 Python
自定义django admin model表单提交的例子
2019/08/23 Python
Python-openCV读RGB通道图实例
2020/01/17 Python
python matplotlib包图像配色方案分享
2020/03/14 Python
Python tkinter实现简单加法计算器代码实例
2020/05/13 Python
法国娇韵诗官方旗舰店:Clarins是来自法国的天然护肤品牌
2018/06/30 全球购物
琳达·法罗眼镜英国官网:Linda Farrow英国
2021/01/19 全球购物
酒店总经理岗位职责
2014/03/17 职场文书
祖国在我心中演讲稿200字
2014/08/28 职场文书
政府个人对照检查材料
2014/08/28 职场文书
2014年团支书工作总结
2014/11/14 职场文书
2015年个人现实表现材料
2014/12/10 职场文书
消防演习通知
2015/04/25 职场文书
楚门的世界观后感
2015/06/03 职场文书
2015年评职称个人工作总结
2015/10/15 职场文书
《角的初步认识》教学反思
2016/02/17 职场文书
apache虚拟主机配置的三种方式(小结)
2022/07/23 Servers