用户名:
密 码: 记住
您当前的位置:首页 > 网络编程 > php教程

php自动获取关键字代码

时间:2015-01-23  来源:西部数据  作者:西部数据
  1. $mincipin=5;//最小词频 
  2. $minlen=4;//关键字最小长度 
  3. tiqukeyword($tiqustr,$minlen,$mincipin); 
  4. function tiqukeyword($tiqustr,$minlen,$mincipin
  5. {$strlong=strlen($tiqustr); 
  6. $arr=array(); 
  7. $k=-1; 
  8. for($i=0;$i<($strlong-$mincipin*$minlen);$i++){ 
  9. $end=ceil(($strlong-$i)/$mincipin+$i); 
  10. for($j=$minlen;$j<$end;$j++){$num=0; 
  11. if(($guanjianzi=substr($tiqustr,$i,$j))!==false){ 
  12. $wz=$i+$j
  13. $num++;} 
  14. else{break;} 
  15. while($wz<$strlong){if(($wz=strpos($tiqustr,$guanjianzi,$wz))!==false) 
  16. {$num++; 
  17. $wz=$wz+strlen($guanjianzi);} 
  18. else break
  19. if($j==$minlen){ 
  20. if($num>=$mincipin){$maxnum=$num;$k++;$str=substr($tiqustr,$i,$j); 
  21. $arr[$k]=array($i,$j,$str,$num,0); 
  22. else{break;} 
  23. else
  24. if($num>=$maxnum){ 
  25. $maxnum=$num
  26. $str=substr($tiqustr,$i,$j); 
  27. $arr[$k]=array($i,$j,$str,$num,0); 
  28. else break
  29. echo '初步得到的数组:'
  30. print_r($arr); 
  31. //echo '<br/><br/><br/><br/>'; 
  32.   
  33. $arrlong=count($arr); 
  34. for($i=0;$i<$arrlong;$i++){ 
  35. $bjarr=$arr[$i]; 
  36. $nowid=$i
  37. if($bjarr[4]==1)continue
  38. for($j=$i+1;$j<$arrlong;$j++){ 
  39. if($arr[$j][4]==1)continue
  40. $qujianks=$bjarr[0]; 
  41. $qujianjs=$bjarr[1]+$bjarr[0]-1; 
  42. $a=$arr[$j][0]; 
  43. $b=$arr[$j][1]+$arr[$j][0]-1; 
  44. if(($bjarr[2]==$arr[$j][2])&&($bjarr[3]>$arr[$j][3]))$arr[$j][4]=1; 
  45.   
  46. if($a<=$qujianks&&$qujianks<=$b&&$a<=$qujianjs&&$qujianjs<=$b
  47. {if($bjarr[3]<=$arr[$j][3]){ 
  48. $arr[$nowid][4]=1;$nowid=$j;$bjarr=$arr[$j]; 
  49. elseif($qujianks<=$a&&$a<=$qujianjs&&$qujianks<=$b&&$b<=$qujianjs){ 
  50. $arr[$j][4]=1; 
  51.   
  52. echo '<br/><br/><br/><br/>重叠加标记后的数组:'
  53. print_r($arr); 
  54.  //开源代码phpfensi.com 
  55. $jieguoarr=array(); 
  56. for($i=0;$i<$arrlong;$i++) 
  57. {if($arr[$i][4]==0)$jieguoarr[]=$arr[$i]; 
  58.   
  59. echo '<br/><br/><br/><br/>'
  60. echo '最后得到的数组:'
  61. print_r($jieguoarr); 
来顶一下
返回首页
返回首页
推荐资讯
WiFi太不安全:7岁女孩11分钟内入侵公共网络 WiFi太不安全:7岁女孩11分钟内入侵近期刚刚发布研究说WiFi网络能获得人们手机里多少私人信息,
不服跑个分?人工智能也出现“刷分”乱象 不服跑个分?人工智能也出现“刷分2014年,人工智能领域突然爆发,成为了科研和科技创业的热门
相关文章
    无相关信息
栏目更新
栏目热门