php实现过滤UBB代码的类

本文实例讲述了php实现过滤UBB代码的类。分享给大家供大家参考。具体如下:

PHP代码如下:

代码如下:

class Day{
   function ubb($Text) {      /// UBB代码转换
        //$Text=htmlspecialchars($Text);
        //$Text=ereg_replace("\r\n","<br>",$Text);
        $Text=ereg_replace("\[br\]","<br />",$Text);
        $Text=nl2br($Text);
        $Text=stripslashes($Text);
        $Text=preg_replace("/\\t/is"," ",$Text);
        $Text=preg_replace("/\[url\](http:\/\/.+?)\[\/url\]/is","<a href=\"\\1\" target=\"new\"><u>\\1</u></a>",$Text);
        $Text=preg_replace("/\[url\](.+?)\[\/url\]/is","<a href=\"http://\\1\" target=\"new\"><u>\\1</u></a>",$Text);
        $Text=preg_replace("/\[url=(http:\/\/.+?)\](.+?)\[\/url\]/is","<a href=\"\\1\" target=\"new\"><u>\\2</u></a>",$Text);
        $Text=preg_replace("/\[url=(.+?)\](.+?)\[\/url\]/is","<a href=\"http://\\1\" target=\"new\"><u>\\2</u></a>",$Text);
        $Text=preg_replace("/\[color=(.+?)\](.+?)\[\/color\]/is","<font color=\"\\1\">\\2</font>",$Text);
        $Text=preg_replace("/\[font=(.+?)\](.+?)\[\/font\]/is","<font face=\"\\1\">\\2</font>",$Text);
        $Text=preg_replace("/\[email=(.+?)\](.+?)\[\/email\]/is","<a href=\"mailto:\\1\"><u>\\2</u></a>",$Text);
        $Text=preg_replace("/\[email\](.+?)\[\/email\]/is","<a href=\"mailto:\\1\"><u>\\1</u></a>",$Text);
        $Text=preg_replace("/\[i\](.+?)\[\/i\]/is","<i>\\1</i>",$Text);
        $Text=preg_replace("/\[u\](.+?)\[\/u\]/is","<u>\\1</u>",$Text);
        $Text=preg_replace("/\[b\](.+?)\[\/b\]/is","<b>\\1</b>",$Text);
        $Text=preg_replace("/\[fly\](.+?)\[\/fly\]/is","<marquee width=\"98%\" behavior=\"alternate\" scrollamount=\"3\">\\1</marquee>",$Text);
        $Text=preg_replace("/\[move\](.+?)\[\/move\]/is","<marquee width=\"98%\" scrollamount=\"3\">\\1</marquee>",$Text);
        $Text=preg_replace("/\[shadow=([#0-9a-z]{1,10})\,([0-9]{1,3})\,([0-9]{1,2})\](.+?)\[\/shadow\]/is","<table width=\"*\"><tr><td style=\"filter:shadow(color=\\1, direction=\\2 ,strength=\\3)\">\\4</td></tr></table>",$Text);
        return $Text;
  }
}

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

(0)

相关推荐

  • php Ubb代码编辑器函数代码

    复制代码 代码如下: <?php /* php Ubb代码编辑器 */ function get_ubb($ubb){ $ubb=preg_replace("/([B])(.*)([/B])/","<B>\2</B>" ,$ubb);//替换B粗体字 $ubb=preg_replace("/([I])(.*)([/I])/","<I>\2</I>" ,$ubb); $ubb

  • PHP 数据结构 算法描述 冒泡排序 bubble sort

    复制代码 代码如下: <?php /** * 冒泡排序 bubble sort * * 原理:多次循环进行比较,每次比较时将最大数移动到最上面.每次循环时,找出剩余变量里的最大值,然后减小查询范围.这样经过多次循环以后,就完成了对这个数组的排序 */ function sort_bubble($list) { $len = count($list); if(empty($len)) return $list; for($i = 0;$i < $len; $i++) { for($j = $i

  • php实现图片转换成ASCII码的方法

    本文实例讲述了php实现图片转换成ASCII码的方法.分享给大家供大家参考.具体如下: php图片转换成ASCII码,转换后可以直接通过字符串显示图片 <html> <head> <title>Ascii</title> <style> body{ line-height:0; font-size:1px; } </style> </head> <body> <?php $image = 'image.j

  • php实现将wav文件转换成图像文件并在页面中显示的方法

    本文实例讲述了php实现将wav文件转换成图像文件并在页面中显示的方法.分享给大家供大家参考.具体分析如下: 需求:将wav文件转换成png文件并且显示出来. Wav_To_Png.php: <?php function wav_graph($file, $f=0, $w=0) { global $DATA_DIR; if(!is_file($file)) return 0; $fp = fopen($DATA_DIR.$file, 'r'); $raw = fread($fp, 36); $s

  • php实现二进制和文本相互转换的方法

    本文实例讲述了php实现二进制和文本相互转换的方法.分享给大家供大家参考.具体如下: 这段代码包含两个函数,bin2text,二进制转换为文本,text2bin,文本转换成二进制 <?php function bin2text($bin_str) { $text_str = ''; $chars = explode("\n",chunk_split(str_replace("\n",'',$bin_str),8)); $_I = count($chars);

  • php UBB 解析实现代码

    复制代码 代码如下: /** +---------------------------------------------------------- * UBB 解析 +---------------------------------------------------------- * @return string +---------------------------------------------------------- */ function ubb($Text) { $Tex

  • php转换颜色为其反色的方法

    本文实例讲述了php转换颜色为其反色的方法.分享给大家供大家参考.具体分析如下: 这段php代码可以把一个颜色变成与之相反的颜色编码,如:白色变成黑色,蓝色变成黄色 function color_inverse($color){ $color = str_replace('#', '', $color); if (strlen($color) != 6){ return '000000'; } $rgb = ''; for ($x=0;$x<3;$x++){ $c = 255 - hexdec(

  • php实现转换ubb代码的方法

    本文实例讲述了php实现转换ubb代码的方法.分享给大家供大家参考.具体如下: function ubb2html($content) { global $article; //是否自动识别 if ($article['isparseurl'] == "1") { $content = parseurl($content); } //自动识别结束 $content = eregi_replace(quotemeta("[b]"),quotemeta("&l

  • php实现过滤UBB代码的类

    本文实例讲述了php实现过滤UBB代码的类.分享给大家供大家参考.具体如下: PHP代码如下: 复制代码 代码如下: class Day{    function ubb($Text) {      /// UBB代码转换         //$Text=htmlspecialchars($Text);         //$Text=ereg_replace("\r\n","<br>",$Text);         $Text=ereg_replac

  • 论坛UBB代码 推荐

    复制代码 代码如下: <%dim param,smiles  'param是UBB标签完全可用的标记 param=full 则完全可用,否则不支持一些占位大的标签 smiles是禁止笑脸转换function UBBCode(content)dim n,i'on error resume nextset re=new regexpre.IgnoreCase=truere.global=true re.pattern="\[code\](\r\n)?([\s\S]+?)\[\/code\]&q

  • php过滤html标记属性类用法实例

    本文实例讲述了php 过滤html标记属性类及其用法.是PHP项目开发中比较常见的实用技巧.分享给大家供大家参考.具体方法如下: HtmlAttributeFilter.class.php类文件如下: <?php /** HTML Attribute Filter * Date: 2013-09-22 * Author: fdipzone * ver: 1.0 * * Func: * public strip 过滤属性 * public setAllow 设置允许的属性 * public set

  • js验证手机号、密码、短信验证码代码工具类

    本文实例为大家分享了js验证手机号.密码.短信验证码的代码工具类,供大家参考,具体内容如下 代码工具类 /** * 参数较验 * * */ var verification = { stop : false, //倒计时 //验证手机号 phone : function (tel, id) { if ("" == tel || !tel) { mui.toast('手机号不可以为空!'); } else { var reg = /^0?1[3|4|5|7|8][0-9]\d{8}$/;

  • ubb代码转换为html

    记得以前贴过一个ubb代码转换为html格式的代码,前几天读ubb的源代码.所以有了这个新的版本.注意,这个版本可能还不能正常使用,详细见注. 这段代码将用户输入的ubb代码转化为html格式,注意,需要Script Engine 5.0的支持(使用了RegExp对象) 注:pattern中使用()将知道regexp记忆搜索到的值,$1是第一个(),其余类推.但$2的语法并不被5.0版本的vbscript.dll所支持,我检查了自己机器上的版本(安装过ie 5.5),发现vbscript.dll

  • php下过滤html代码的函数 提高程序安全性

    以下为过滤HTML代码的函数: 复制代码 代码如下: function ihtmlspecialchars($string) { if(is_array($string)) { foreach($string as $key => $val) { $string[$key] = ihtmlspecialchars($val); } } else { $string = preg_replace('/&((#(\d{3,5}|x[a-fA-F0-9]{4})|[a-zA-Z][a-z0-9]{

  • 改进:论坛UBB代码自动插入方式

    目前IECN论坛的UBB自动插入时,总是将插入的内容加到了文章末尾,使用起来很不方便.刚刚对它进行了一下改进.改进的代码参考river以前贴过的JS,在此对river深表感谢^^ 改进后:1.可在"当前光标处"插入相应的UBB代码2.可在"当前选中的内容"首尾分别插入相应的UBB代码3.通过浏览器:IE 5.0+, FireFox 1.06+, Opera8.5+ 相关JS代码:http://cnlei.iecn.net/mycode/ubb4iecn/ubb4ie

  • jquery easyui combobox模糊过滤(示例代码)

    修改jquery easyui combobox模糊过滤 复制代码 代码如下: filter:function(q,row){ var opts=$(this).combobox("options"); //return row[opts.textField].indexOf(q)==0;// return row[opts.textField].indexOf(q)>-1;//将从头位置匹配改为任意匹配 },formatter:function(row){ var opts=$

随机推荐