>  기사  >  백엔드 개발  >  php自动获取关键字的方法_PHP教程

php自动获取关键字的方法_PHP教程

WBOY
WBOY원래의
2016-07-13 09:55:33733검색

php自动获取关键字的方法

   本文实例讲述了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程序设计有所帮助。

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/991643.htmlTechArticlephp自动获取关键字的方法 本文实例讲述了php自动获取关键字的方法。分享给大家供大家参考。 具体实现方法如下: 代码如下:$mincipin=5;//最...
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.