VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > PHP >
  • php数组查找函数总结

这篇文章主要介绍了php数组查找函数,总结了三个常用的数组查找函数,可用于关键词过滤,是非常实用的技巧,需要的朋友可以参考下

本文实例总结了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.     if(is_array($crud) && !emptyempty($crud)) 
  3.     { 
  4.         foreach($crud as $value
  5.         { 
  6.             if(strpos($value'|||') !== false) 
  7.             { 
  8.                 $cruds = explode('|||'$value); 
  9.                 $num = count($cruds); 
  10.                 $check = 0; 
  11.                 foreach($cruds as $val
  12.                 { 
  13.                     if(strpos($str$val) !== false) 
  14.                     { 
  15.                         $check++; 
  16.                     } 
  17.                 } 
  18.                 if($check == $num
  19.                 { 
  20.                     return true; 
  21.                 } 
  22.             } 
  23.             else 
  24.             { 
  25.                 if(strpos($str$value) !== false) 
  26.                 { 
  27.                     return true; 
  28.                 } 
  29.             } 
  30.         } 
  31.         return false; 
  32.     } 
  33. $crud = array('中国|||我国|||大地''kelon|||lerke|||ssxb''aaa'); 
  34. $test1 = '我是中国人.我国人很多.大地上全是人.-__-!!好xx的造句.'
  35.  
  36. 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.         } //www.phpfensi.com 
  22.    } 
  23. elseif(preg_match('/'.$k.'/i',$keyword)){ 
  24. echo "敏感关键字"
  25.     }  

希望本文所述对大家的PHP程序设计有所帮助。

 


出处:http://www.phpfensi.com/php/20210426/14571.html


相关教程