php字符串过滤与替换小结

yipeiwu_com6年前PHP代码库

本文实例总结了php字符串过滤与替换的方法。分享给大家供大家参考。具体实现方法如下:

复制代码 代码如下:
<?php
class cls_string_filter{
 //将\n转化为<br/>--囧,这有意思么?
 static public function nl2br($string){
  return nl2br($string);
 }
 //将<br/>转化为\n
 static public function br2nl($string){
  $array = array('<br>','<br/>');
  return str_replace($array,"\n",$string);//字符串替换
 }
 //多个空格只保留一个
 static public function merge_spaces($string){
  return preg_replace("/\s(?=\s)/","\\1",$string);//(?=pattern)举例:abc(?=kk)能匹配abckk,但不能匹配abcdd
 }
 //多个<br/>只保留一个
 static public function merge_brs($string){
  return preg_replace("/((<br\/?>)+)/i","<br>",$string);//---"/"为什么也转义了
 }
 //过滤字符串中的html标签
 static public function strip_tags($string){
  return strip_tags($string);
 }
 //将字符串转换为小写--/--大写
 static public function strtolower($string){
  return strtolower($string);
 }
 static public function strtoupper($string){
  return strtoupper($string);
 }
 //过滤字符串开头与结尾的特定字符
 static public function trim($string,$char_list='\\\\s'){
  $find = array('/[\^\-\]\\\]/S','/\\\{4}/S','/\//');
  $replace = array('\\\\\\0','\\','\/');
  $char = preg_replace($fine,$replace,$char_list);
  $pattern = '^['.$chars.']*|['.$chars.']';
  return preg_replace("/$pattern/sSD",'',$string);
 }
 //过滤字符串中<style>脚本
 static public function stric_style($string){
  $reg = "/<style[^>]*?>.*?<\/style>/is";
  return preg_replace($reg,'',$string);
 }
 //过滤字符串中html危险代码
 static public function strip_html_tags($string){
  $reg = "/(\/?)/(script|iframe|style|html|body|title|meta|\?|\%)([^>]*?>)/is";
  return preg_replace($reg,'',$string);
 }
}
?>

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

相关文章

PHP进程通信基础之信号量与共享内存通信

由于进程之间谁先执行并不确定,这取决于内核的进程调度算法,其中比较复杂。由此有可能多进程在相同的时间内同时访问共享内存,从而造成不可预料的错误。信号量这个名字起的令人莫名其妙,但是看其英...

php获取QQ头像并显示的方法

本文实例讲述了php获取QQ头像并显示的方法。分享给大家供大家参考。具体分析如下: 最近看到博客留言的头像有点别扭,因为游客的头像都是同一个头像,看着不是很舒服。虽然现在绝大多数的主题集...

据说是雅虎的一份PHP面试题附答案

从网上搜集到的,据说是雅虎的面试题。 1. Which of the following will not add john to the users array? 1. $users[...

举例讲解PHP面对对象编程的多态

什么是多态? 多态性,其来自于dictionary.com的定义是"以不同形式,阶段或者类型出现在独立的组织中或者同种组织中,而不存在根本区别。"由该定义,我们可以认为,多态性是...

ThinkPHP 防止表单重复提交的方法

ThinkPHP 防止表单重复提交的方法

然而有一种情况,是防止不了的: 用户提交表单以后,点击浏览器后退按钮返回表单页面,这个时候浏览器会直接从缓存中取出页面,因此token验证一定是通不过的。 网上有许多种办法可以绕过这个...