PHP開發基礎教學之簡單的UBB文字編輯器

本節看不懂的話可以跳過,以後有興趣再來仔細看

#我們來看一下UBB編輯器。這是網站當中常用到的文字處理技術。因為使用UBB檔案編輯器,我們指定的格式才能存在。不指定的格式的話,使用者是無法在網站中展現的。

我們來看看效果:

<?php
$string='[b]静夜思[/b]
[color=Red]李白[/color]
[i]床前明月光[/i]
[u]疑是地上霜[/u]
[i]举头望明月[/i]
[u]低头思故乡[/u]
';
//匹配UBB字符
$pattern=array(
    '/\[b\](.*)\[\/b\]/i',
    '/\[i\](.*)\[\/i\]/iU',
    '/\[u\](.*?)\[\/u\]/i',
    '/\[color=(.*?)\](.*?)\[\/color\]/',
    );
//需要替换的UBB字符
$replace=array(
    '<b>\1</b><br />',
    '<i>\1</i><br />',
    '<u>\1</u><br />',
    '<font color="\1">\2</font><br />',
    );
//使用正则匹配$string,将$string当中的值变为$replace的效果
$ubb=preg_replace($pattern,$replace,$string);
echo $ubb;
?>

輸出結果如右所示


繼續學習
||
<?php $string='[b]静夜思[/b] [color=Red]李白[/color] [i]床前明月光[/i] [u]疑是地上霜[/u] [i]举头望明月[/i] [u]低头思故乡[/u] '; //匹配UBB字符 $pattern=array( '/\[b\](.*)\[\/b\]/i', '/\[i\](.*)\[\/i\]/iU', '/\[u\](.*?)\[\/u\]/i', '/\[color=(.*?)\](.*?)\[\/color\]/', ); //需要替换的UBB字符 $replace=array( '<b>\\1</b><br />', '<i>\\1</i><br />', '<u>\\1</u><br />', '<font color="\\1">\\2</font><br />', ); //使用正则匹配$string,将$string当中的值变为$replace的效果 $ubb=preg_replace($pattern,$replace,$string); echo $ubb; ?>