网站地图    收藏   

主页 > php专栏 > php函数大全 >

php数组查找关键函数 - php函数

来源:自学PHP网    时间:2014-11-25 00:26 作者: 阅读:次

[导读] 提供三种方法来判断一个字符串中是否包括我们定义好的词,这比较适合于在留言,评论等地址进行关键词过滤,实例代码如下:$crud=array(#39;中国|||我国|||大地#39;,#39;kelon|||lerke|||sb#39;,#3......

php数组查找关键函数

提供三种方法来判断一个字符串中是否包括我们定义好的词,这比较适合于在留言,评论等地址进行关键词过滤,实例代码如下:

  1. $crud = array('中国|||我国|||大地', 'kelon|||lerke|||sb', 'sesscxx'); 
  2. $crud = join('|',$crud); 
  3. $crud = str_replace('|||', '|', $crud); 
  4. $pat  = "/({$crud})/i"; 
  5. $txt = '我知道中国你是sdfex谁!!'; 
  6. preg_match/*_all*/($pat, $txt, $matches); 
  7. var_dump($matches); 

方法二,代码如下:

  1. function checkcrud($str, $crud) 
  2. { 
  3.     if(is_array($crud) && !emptyempty($crud)) 
  4.     { 
  5.         foreach($crud as $value) 
  6.         { 
  7.             if(strpos($value, '|||') !== false) 
  8.             { 
  9.                 $cruds = explode('|||', $value); 
  10.                 $num = count($cruds); 
  11.                 $check = 0; 
  12.                 foreach($cruds as $val) 
  13.                 { 
  14.                     if(strpos($str, $val) !== false) 
  15.                     { 
  16.                         $check++; 
  17.                     } 
  18.                 } 
  19.                 if($check == $num) 
  20.                 { 
  21.                     return true; 
  22.                 } 
  23.             } 
  24.             else 
  25.             { 
  26.                 if(strpos($str, $value) !== false) 
  27.                 { 
  28.                     return true; 
  29.                 } 
  30.             } 
  31.         } 
  32.         return false; 
  33.     } 
  34. } 
  35. $crud = array('中国|||我国|||大地', 'kelon|||lerke|||ssxb', 'aaa'); 
  36. $test1 = '我是中国人.我国人很多.大地上全是人.-__-!!好xx的造句.'; 
  37.  
  38. var_dump(checkcrud($test1, $crud)); 

方法三,代码如下:

  1. function lktest($v,$keyword){ 
  2. foreach ($v as $k){ 
  3. if (strpos($k,"|||")!==false){ 
  4.     $kelon=explode("|||",$k); 
  5.     //求数组最大值 
  6.     $b=count($kelon); 
  7.     foreach($kelon as $t){ 
  8.         //echo $t.'<br>'; 
  9.         if (preg_match('/'.$t.'/i',$keyword)){  
  10.             //echo "敏感关键字"; 
  11.             $a=$a+1;            
  12.         } 
  13.     else{     
  14.     $a=''; 
  15.     } 
  16.              
  17.     } 
  18.     //如果数组最大值跟$a相等时,则所有|||关键字都出现了 
  19.     if ($a==$b){ 
  20.         echo "敏感关键字";     
  21.         } 
  22.    } 
  23. elseif(preg_match('/'.$k.'/i',$keyword)){ 
  24. echo "敏感关键字";//开源代码phpfensi.com 
  25.     }  
  26. } 
  27. }

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论