发新话题
打印

PHP字符串过滤函数

本主题由 admin 于 2007-11-4 12:02 移动

PHP字符串过滤函数

呵呵,非常简单的一个文字过滤的函数
复制内容到剪贴板
代码:
<?php
function words_filter($string)
{
    $obscenities = array("fuck","sex");   //使用数组保存需要过滤的词语
   //$obscenities = file ("/path/fuck_word.txt");  //使用文件保存需要过滤的词语
    foreach ($obscenities as $fuck_word)
    {     
        if (stristr(trim($string),$fuck_word))
        {
            $length = strlen($fuck_word);
            for ($i = 1; $i <= $length; $i++)
            {
            $stars .= "*";
            }
        $string = eregi_replace($fuck_word,$stars,trim($string));
        $stars = ’’;
        }
    }
    return $string;
}


?>
下面是以个调用的例子
复制内容到剪贴板
代码:
<?php
    $string = "fuck and sex not allow to print.";
    print words_filter($string);
?>
整理几个有用的php字符串过滤,转换函数
复制内容到剪贴板
代码:

nl2br();// \n to <br/>
addslashes(); stripslashes();//对数据库操作时,转义特殊字符  

chop();//除去字符串右边空格
trim();//除去字符串中所有空格
ltrim();//除去字符串左边空格  

htmlspecialchars();//转换’$’,’"’,’<’,’>’为相应的html实体
htmlentities();//转换所有html标记为相应的html实体  

array explode(string separator, string str);//分割字符串
string implode(string separator, array arr);//连接字符串
  
strtoupper(); strtolower();//转换大小写
ucfirst();//只转换第一个字符为大写  
ucwords();//转换每个words的第一个字母为大写
--------
function safe_convert($string, $html=0) { //Words Filter  
  if ($html==0) {  
    $string=htmlspecialchars($string, ENT_QUOTES);  
    $string=str_replace("<","<",$string);  
    $string=str_replace(">",">",$string);  
    $string=str_replace("\", ’&#92;’, $string);  
  } else {  
    $string=addslashes($string);  
    $string=str_replace("\\", ’&#92;’, $string);  
  }  
  $string=str_replace("\r","<br/>",$string);  
  $string=str_replace("\n","",$string);  
  $string=str_replace("\t","  ",$string);  
  $string=str_replace(" ","  ",$string);  
  $string=str_replace(’|’, ’&#124;’, $string);  
  $string=str_replace("&amp;#96;","&#96;",$string);  
  $string=str_replace("&amp;#92;","&#92;",$string);  
  return $string;  
}  

  $string=str_replace("&amp;#92;","&#92;",$string);

TOP

发新话题