php自动获取关键字的方法
这篇文章主要介绍了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
$end=ceil(($strlong-$i)/$mincipin+$i);
for($j=$minlen;$j
if(($guanjianzi=substr($tiqustr,$i,$j))!==false){
$wz=$i+$j;
$num++;}
else{break;}
while($wz
{$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 '
';
$arrlong=count($arr);
for($i=0;$i
$bjarr=$arr[$i];
$nowid=$i;
if($bjarr[4]==1)continue;
for($j=$i+1;$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
{if($bjarr[3]
$arr[$nowid][4]=1;$nowid=$j;$bjarr=$arr[$j];
}
}
elseif($qujianks
$arr[$j][4]=1;
}
}
}
echo '
重叠加标记后的数组:';
print_r($arr);
$jieguoarr=array();
for($i=0;$i
{if($arr[$i][4]==0)$jieguoarr[]=$arr[$i];
}
echo '
';
echo '最后得到的数组:';
print_r($jieguoarr);
}
希望本文所述对大家的php程序设计有所帮助。
,上一篇: PHP怎么取XML中数据
推荐阅读
-
php命令行(cli)下执行PHP脚本文件的相对路径的问题解决方法,_PHP教程
-
php自动获取关键字的方法
-
PHP获取文件夹内所有文件包括子目录文件的名称或路径,_PHP教程
-
php使用ffmpeg获取视频信息并截图的实现方法,phpffmpeg_PHP教程
-
用PHP的超级变量$_POST获取HTML表单(HTML Form) 数据
-
php调用淘宝开放API实现根据卖家昵称获取卖家店铺ID的方法,api卖家_PHP教程
-
PHP的foreach中使用引用时需要注意的一个问题和解决方法_PHP教程
-
php中工厂方法的两个特殊例子
-
PHP获取文件绝对路径的代码(上一级目录)
-
PHP在Linux下连接MSSQLServer的配置方法简述(二、FreeTDS库)_PHP教程