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}
相關文章
- PHP外掛系統的實現(七):外掛案例PHP
- PHP外掛系統的實現(五):觸發外掛PHP
- PHP外掛系統的實現(一)PHP
- PHP外掛系統的實現(二):獲取全部外掛資訊PHP
- PHP外掛系統的實現(三):實現探測器PHP
- PHP外掛系統的實現(四):實現註冊動作PHP
- PHP外掛系統的實現(六):完整經理類PHP
- 用ASP實現論壇的UBB功能 (轉)
- 跟著辛星用PHP的反射機制來實現外掛PHP反射
- javascript實現的微信分享外掛JavaScript
- jQuery實現的cookie操作外掛jQueryCookie
- jQuery實現的元素抖動外掛jQuery
- QQ搶紅包外掛實現
- Zend Framework和Smarty在php中的配置FrameworkPHP
- eclipse開發php的外掛EclipsePHP
- 實現元素動畫的6款 JavaScript 外掛動畫JavaScript
- php短視訊原始碼,jQuery實現自定義輪播圖外掛PHP原始碼jQuery
- php常用外掛安裝PHP
- JavaScript原生實現樓梯外掛JavaScript
- 手動實現HTML外掛BeautifyHTML
- 外掛化知識梳理(10) Service 外掛化實現及原理
- PHP 實現字串翻轉(包含中文漢字)的實現PHP字串
- css實現炫彩字型CSS
- 外掛化知識梳理(4) Small 框架之如何實現外掛更新框架
- JQuery外掛定義&&談談jquery的實現jQuery
- 使用Maven的assembly外掛實現自定義打包Maven
- 使用VC++ ATL實現iStylePDF的COM外掛C++
- 【Maven實戰技巧】「外掛使用專題」Maven-Assembly外掛實現自定義打包Maven
- 從零實現一個 VuePress 外掛Vue
- AppDomain實現【外掛式】開發APPAI
- 騰訊地圖SDK Flutter外掛實現地圖Flutter
- 使用spring外掛實現策略模式Spring模式
- 【MyBatis原始碼分析】外掛實現原理MyBatis原始碼
- chrome 外掛實現mac地址獲取ChromeMac
- Android外掛化技術之旅 1 開篇 - 實現啟動外掛與呼叫外掛中的Activity和ServiceAndroid
- smarty、smarty格式化、smarty整數、smarty float、smarty各種轉換方式、smarty日期轉換等等 (轉)...
- antd圖示庫按需載入的外掛實現
- C#反射實現簡單的外掛系統C#反射