Foros del Web » Programando para Internet » PHP »

[ayuda] html to bbcode

Estas en el tema de [ayuda] html to bbcode en el foro de PHP en Foros del Web. Estimados tengo la siguiente función que funciona a la perfección pero quiero hacer la inversa. Código PHP: function  bbcodetohtml ( $texto ){     $texto  =  ...
  #1 (permalink)  
Antiguo 11/01/2010, 08:10
 
Fecha de Ingreso: mayo-2009
Mensajes: 5
Antigüedad: 15 años
Puntos: 0
[ayuda] html to bbcode

Estimados tengo la siguiente función que funciona a la perfección pero quiero hacer la inversa.

Código PHP:
function bbcodetohtml($texto){
   
$texto htmlentities($texto);
   
$a = array(
      
"/\[i\](.*?)\[\/i\]/is",
      
"/\[b\](.*?)\[\/b\]/is",
      
"/\[u\](.*?)\[\/u\]/is",
      
"/\[img\](.*?)\[\/img\]/is",
  
"/\[url\](.*?)\[\/url\]/is",
      
"/\[url=(.*?)\](.*?)\[\/url\]/is",
"/\[color=(.*?)\](.*?)\[\/color\]/is",
  
"/\[size=(.*?)\](.*?)\[\/size\]/is"
   
);
   
$b = array(
      
"<i>$1</i>",
      
"<b>$1</b>",
      
"<u>$1</u>",
      
"<img src=\"$1\" />",
  
"<a href=\"$1\" target=\"_blank\">$1</a>",
      
"<a href=\"$1\" target=\"_blank\">$2</a>",
  
"<font color=\"$1\">$2</font>",
  
"<font size=\"$1\">$2</font>"
   
);
   
$texto preg_replace($a$b$texto);
      
$texto nl2br($texto);
   return 
$texto;

si me pueden ayudar se los agradecería, la idea seria pasar de HTML a BBCODE.

Slds.-
  #2 (permalink)  
Antiguo 11/01/2010, 08:55
Avatar de zeuslife  
Fecha de Ingreso: enero-2008
Ubicación: Madrid
Mensajes: 533
Antigüedad: 16 años, 3 meses
Puntos: 11
Respuesta: [ayuda] html to bbcode

Código PHP:
Ver original
  1. function bbcodetohtml($texto){
  2.    $a = array(
  3.       "/\[i\](.*?)\[\/i\]/is",
  4.       "/\[b\](.*?)\[\/b\]/is",
  5.       "/\[u\](.*?)\[\/u\]/is",
  6.       "/\[img\](.*?)\[\/img\]/is",
  7.   "/\[url\](.*?)\[\/url\]/is",
  8.       "/\[url=(.*?)\](.*?)\[\/url\]/is",
  9. "/\[color=(.*?)\](.*?)\[\/color\]/is",
  10.   "/\[size=(.*?)\](.*?)\[\/size\]/is"
  11.    );
  12.    $b = array(
  13.       "<i>$1</i>",
  14.       "<b>$1</b>",
  15.       "<u>$1</u>",
  16.       "<img src=\"$1\" />",
  17.   "<a href=\"$1\" target=\"_blank\">$1</a>",
  18.       "<a href=\"$1\" target=\"_blank\">$2</a>",
  19.   "<font color=\"$1\">$2</font>",
  20.   "<font size=\"$1\">$2</font>"
  21.    );
  22.    $texto = preg_replace($b, $a, $texto);
  23.       $texto = nl2br($texto);
  24.    return $texto;
  25. }

No lo he probado, pero así deberia de funcionar.

Saludos
__________________
Neversyn Software e Ingeniería
  #3 (permalink)  
Antiguo 11/01/2010, 09:05
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 14 años, 6 meses
Puntos: 334
Respuesta: [ayuda] html to bbcode

Cita:
Iniciado por zeuslife Ver Mensaje
Código PHP:
Ver original
  1. function bbcodetohtml($texto){
  2.    $a = array(
  3.       "/\[i\](.*?)\[\/i\]/is",
  4.       "/\[b\](.*?)\[\/b\]/is",
  5.       "/\[u\](.*?)\[\/u\]/is",
  6.       "/\[img\](.*?)\[\/img\]/is",
  7.   "/\[url\](.*?)\[\/url\]/is",
  8.       "/\[url=(.*?)\](.*?)\[\/url\]/is",
  9. "/\[color=(.*?)\](.*?)\[\/color\]/is",
  10.   "/\[size=(.*?)\](.*?)\[\/size\]/is"
  11.    );
  12.    $b = array(
  13.       "<i>$1</i>",
  14.       "<b>$1</b>",
  15.       "<u>$1</u>",
  16.       "<img src=\"$1\" />",
  17.   "<a href=\"$1\" target=\"_blank\">$1</a>",
  18.       "<a href=\"$1\" target=\"_blank\">$2</a>",
  19.   "<font color=\"$1\">$2</font>",
  20.   "<font size=\"$1\">$2</font>"
  21.    );
  22.    $texto = preg_replace($b, $a, $texto);
  23.       $texto = nl2br($texto);
  24.    return $texto;
  25. }

No lo he probado, pero así deberia de funcionar.

Saludos

eso no funciona... tienes q hacer la funcion denuevo... ya que la expresion regular no puede ir en el segundo valor de preg_replace

saludos
__________________
More about me...
~ @rhyudek1
~ Github
  #4 (permalink)  
Antiguo 11/01/2010, 09:11
 
Fecha de Ingreso: mayo-2009
Mensajes: 5
Antigüedad: 15 años
Puntos: 0
Respuesta: [ayuda] html to bbcode

Así es... lo probe xD

Slds.-

Etiquetas: bbcode, html
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:30.