Siento ser el mismo pesado de antes xD
Buscando y buscando he encontrado un código que me sirve y funciona bien, pero me gustaría saber el porque es así, me gusta saber que es lo que hace cada pedazo de código de mi web.
Código PHP:
<?php
header('Content-Type: text/html; charset=ISO-8859-1');
// Obtención de Datos de la Base de Datos
$texto_BD = "
[b]Negrita[/b]
[i]Cursiva[/i]
[u]Subrayado[/u]
[s]Tachado[/s]
[center]Centrado[/center]
[code]Código[/code][list]
[li]Lista 1[/li]
[li]Lista 2[/li][/list][hr]
[size=20pt]Tamaño 20[/size]
[color=red]ROJO[/color]
[color=green]VERDE[/color]
[color=grey]GRIS[/color]
[color=purple]VIOLETA[/color]
[color=orange]NARANJA[/color]
[IMAGEN]URL IMAGEN[/IMAGEN] // IMAGEN es el BBCode IMG
[DIRECCION]WEB[/DIRECCION] // DIRECCION es el BBCode URL
[DIRECCION=WEB]TEXTO[/DIRECCION]
[youtube]VIDEO YOUTUBE[/youtube]
";
function BBcode($texto){
$texto = htmlentities($texto);
$a = array(
"/\[i\](.*?)\[\/i\]/is",
"/\[b\](.*?)\[\/b\]/is",
"/\[u\](.*?)\[\/u\]/is",
"/\[img\](.*?)\[\/img\]/is",
"/\[DIRECCION=(.*?)\](.*?)\[\/DIRECCION\]/is"
);
$b = array(
"<i>$1</i>",
"<b>$1</b>",
"<u>$1</u>",
"<img src=\"$1\" />",
"<a href=\"$1\" target=\"_blank\">$2</a>"
);
$texto = preg_replace($a, $b, $texto);
$texto = nl2br($texto);
return $texto;
};
?>
Código HTML:
<html>
<head>
<title>Mi Web muestra caritas</title>
</head>
<body bgcolor='#AAAAAA'>
<?php
echo BBCode($texto_BD);
?>
</body>
</html>
Pues es que no se para que sirven tantas /\ en el array, ni el $1, $2, etc, ni (.*?) ni casi nada de lo que hay en esa función, alguien me hecha una mano? todavia tengo que implementar el del youtube y no se como hacerlo sin conocer el comportamiento xD
P.D Estoy harto de que no me deje poner los BBCode de URL al final me voy a hinchar a contestar mensajes hasta que alcanze las 30 respuestas porque me tiene desesperado ya