Estoy intentando un parser de BBcode. en realidad ya esta pero de una forma bastante rudimentaria, osea asi:
Código PHP:
function bbcode($texto)
{
$texto=nl2br($texto);
$texto=str_replace("[ b]","<b>",$texto);/*Obviamente sin espacion solo los puse asi para que el foro no lo reconociera como bbcode de el*/
/** Y asi con cada codigo */
return $texto;
}
asi:
Código PHP:
function bbcode($texto)
{
$code = array("[ b]","[ /b]");
$html = array("<b>","</b>");
$texto= preg_replace($code,$html,$texto);
return $texto;
}
echo bbcode("[ b]Hola[ /b] chao");
[]Hola[/] chao
luego quise hacerlo de la siguiente forma
Código PHP:
function bbcode($texto)
{
$code = array("/([)(b)(])(\r\n)*(.*)([/b])/siU",
"/([)(i)(])(\r\n)*(.*)([/i])/siU");
$html = array("<b>\5</b>",
"<i>\5</i>");
$texto=preg_replace($code, $html, $texto);
return $texto;
}
echo bbcode("[ b]Hola[ /b] chao");
Cita:
esa linea corresponde al preg_replace();[ b]Hola[ /b] chaoPHP Warning: Unknown modifier 'b' in C:\WINDOWS\TEMP\~scp.php on line 10 PHP Warning: Unknown modifier ']' in C:\WINDOWS\TEMP\~scp.php on line 10
Entonces la pregunta es:
Que y como puedo hacer para la funcion de bbcode para no hacerla tan engorrosa como la primera muestra, osea para hacer un bucle mas funcional?
De antemano gracias
Saludos

Este tema le ha gustado a 1 personas