Hola,
me parece que lo mejor seria utilizar expresiones regulares para eso, te pongo un ejemplo:
Código PHP:
$texto = "El perro loco se volvio [*b]loco[*/b] se comio un choripan.";
$texto = ereg_replace('(\\[b\\])(.+)(\\[/b\\])', '<b>\\2</b>', $texto);
echo $texto; // imprime El perro loco se volvio <b>loco</b> se comio un choripan.
Logico, no tener en cuenta los
[*]
Saludos...