De nuevo problemas con lo mismo,..
Estoy haciendo la funcion de bbcode, y estoy añadiendo un modulo para colorear la sintaxis de la etiqueta [code=lenguje][/code]
Código PHP:
function BBC_Smileys ($string) {
$string=nl2br($string);
$a = array(
"/\[i\](.*?)\[\/i\]/is",
"/\[b\](.*?)\[\/b\]/is",
"/\[u\](.*?)\[\/u\]/is",
"/\[img\](.*?)\[\/img\]/is",
"/\[url=(.*?)\](.*?)\[\/url\]/is",
"/\[php\](.+)\[\/php\]/is",
"/\[ul\](.*?)\[\/ul\]/is",
"/\[li\](.*?)\[\/li\]/is",
"/\[br]/is",
"/\[center\](.*?)\[\/center\]/is",
"/\:D/is",
"/\:P/is",
"/\:wink:/is",
"/\:mira/is"
);
$b = array(
"<i>$1</i>",
"<strong>$1</strong>",
"<u>$1</u>",
"<img src=\"$1\" />",
"<a href=\"$1\" target=\"_blank\">$2</a>",
geshi_highlight("$1", "php", "geshi/geshi/"),
"<ul>$1</ul>",
"<li>$1</li>",
"<br><br>",
"<center>$1</center>",
"<img src=\"Smileys/dientes.gif\" />",
"<img src=\"Smileys/lengua.gif\" />",
"<img src=\"Smileys/wink.gif\" />",
"<img src=\"Smileys/ves.gif\" />"
);
$texto = preg_replace($a, $b, $string);
return $texto;
}
El problema es que no se como obtener el contenido de la etiqueta si encesito parcearla con otra funcion :S entonces en ves de colorear la sintaxis termina coloreando $1 en ves de lo que se puso entre etiquetas..
Alguna idea?
Saludos