регулярное выражение — замена строки PHP для BBCode

Я хочу сделать собственный BBCode для своего сайта на форуме, но у меня возникла проблема, и мне трудно ее исправить.

Это то, что в базе данных для тела темы «[b] Bold [/ b] [i] Italic [/ i] [strike] Strike [/ strike]» ».

Однако вывод отображается так: «[i] Italic [/ i] [strike] Strike [/ strike]» ».

Итак, я предполагаю, что это проблема с отражением этого, но я не уверен, как это исправить. Вот текущий код:

function bbcode($input) {
$input = strip_tags($input);
$input = htmlentities($input);

$search = array('/\[b\](.*?)\[\/b\]/is');

$replace = array('<b>$body</b>');

return preg_replace($search, $preg_replace, $input);
}

while($row = mysql_fetch_array($threadquery, MYSQL_ASSOC)) {
$body = str_replace("\n",'<br>', $row['body']);
}

echo bbcode($body);

-4

Решение

правильный код должен быть:

$replace = array('<b>$1</b>');

return preg_replace($search, $replace, $input);
0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector