教程集 www.jiaochengji.com
教程集 >  脚本编程  >  php  >  正文 PHP smarty的ubb插件实现彩字

PHP smarty的ubb插件实现彩字

发布时间:2016-10-29   编辑:jiaochengji.com
教程集为您提供PHP smarty的ubb插件实现彩字等资源,欢迎您收藏本站,我们将为您提供最新的PHP smarty的ubb插件实现彩字资源



一.彩字的简单实现

上面的程序只是表述了一些彩字的基本原理,要实现更复杂和美观的彩字,所要做的只是更换一下字体,改一下字体颜色,添加一些背景图,再考虑一下缓存等,方法也差不多,朋友们可以自己试试.

二.彩字应用

上面的程序生成的彩字是通过"?t=文字"来传递的,但需注意的是,这些文字最好用urlencode来编码,当然,长度也应该有限制,这不是本文讨论的范围.
另外,生成彩字的程序和传递文字的程序都使用utf-8编码,如果不是,手工转一下..
要使用彩字,只需要用<img src="color.PHP?t=xxx" />即可,其中,color.php为生成彩字的程序(即上面的程序),xxx为经urlencode编码的文字(用来生成彩字)

三.smarty插件

在smarty的plugins目录下新建一文件分析天平modifier.ubb.php,

以下为引用的内容:
function smarty_modifier_ubb($string){
    $ubb = array(
        ''/[b](. ?)[/b]/i'', #加粗
        ''/[url=(. ?)](. ?)[/url]/i'', #url
        ''/[colorfont](. ?)[/colorfont]/ie'' #彩字,注意,要加e修饰符
    );
    $tohtml = array(
        ''<b>\1</b>'',
        ''<a href="\1">\2</a>'',
        ''"<img src=''color.php?t=".urlencode("\1")."''/>"''
    );
    //以上只是演ubb的实现,更多的ubb标签朋友们可以按方法自己实现,其中的color.php根椐实际去修改
    return preg_replace($ubb,$tohtml,$string);

这样,要显示彩字,只需在内容中加入
[colorfont]文字[/colorfont]
显示时,在smarty模板中使用ubb修饰符即可,如{$content|ubb}

[关闭]
~ ~