You need to convert BB tags [hide_guest][/hide_guest] , I do this, but everything is the same:
 $parsered = 'Текст [hide_guest]Скрыто[/hide_guest] Текст'; $text = preg_replace_callback('#\[hide_guest\](.+?)\[/hide_guest\]#si', 'hide_guest', $parsered); function hide_guest($match) { return '<div class="spoiler">'.$match[1].'</div>'; } echo $text; 
Текст <div class="spoiler">Скрыто</div> Текст- strangeqargopreg_replace_callbackfunctionpreg_replace_callbacknot needed, just enoughpreg_replace. - Visman