php自动获取关键字的方法
发布:smiling 来源: PHP粉丝网 添加日期:2021-05-05 20:40:17 浏览: 评论:0
这篇文章主要介绍了php自动获取关键字的方法,通过自定义函数tiqukeyword实现关键字的自动获取功能,具有一定参考借鉴价值,需要的朋友可以参考下。
本文实例讲述了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);
- }
Tags: php获取关键字
相关文章
- ·php自动获取关键字代码(2014-09-08)
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)