私はこの機能を持っています:
function bb_parse($string) {
$string = $this->quote($string);
$string=nl2br($string);
$string = html_entity_decode(stripslashes(stripslashes($string)));
$tags = 'b|i|u';
while (preg_match_all('`\[('.$tags.')=?(.*?)\](.+?)\[/\1\]`', $string, $matches)) foreach ($matches[0] as $key => $match) {
list($tag, $param, $innertext) = array($matches[1][$key], $matches[2][$key], $matches[3][$key]);
switch ($tag) {
case 'b': $replacement = "<strong>$innertext</strong>"; break;
case 'i': $replacement = "<em>$innertext</em>"; break;
case 'u': $replacement = "<u>$innertext</u>"; break;
}
$string = str_replace($match, $replacement, $string);
}
return $string;
}
ご覧のとおり、太字、斜体、下線付きのBBCodeを簡単に作成できます。ただし、この関数にもスマイリーを追加しようとしていますが、運がありません。
$ tagsに:)を追加してから、ケースにスマイリー:) imgを追加しようとしましたが、うまくいきませんでした。
どうすればよいので、これにスマイリーを追加することもできますか?
前もって感謝します。