Foros del Web » Programando para Internet » PHP »

sustitucion dinamica en HTML de bucles PHP

Estas en el tema de sustitucion dinamica en HTML de bucles PHP en el foro de PHP en Foros del Web. Hola buenas tardes, acudo a forosdelweb con una duda que no logro resolver. estuve leyendo acerca como reemplazar contenido repetitivo dinamicamente en HTML para esto ...
  #1 (permalink)  
Antiguo 04/01/2013, 14:37
 
Fecha de Ingreso: agosto-2007
Ubicación: Santiago de Chile
Mensajes: 67
Antigüedad: 16 años, 8 meses
Puntos: 1
sustitucion dinamica en HTML de bucles PHP

Hola buenas tardes,

acudo a forosdelweb con una duda que no logro resolver.
estuve leyendo acerca como reemplazar contenido repetitivo dinamicamente en HTML

para esto se utiliza una expresion regular, la cual no logro entender (Soy nuevo en esto, perdon la ignorancia).

okey, esto va mas o menos asi. dentro de una plantilla HTML se declara lo siguiente

Código:
<!-- SUSTITUCION DINAMICA -->
<tr>
     <td> [INDICADOR DE SUSTITUCION] </td>
</tr>
<!-- SUSTITUCION DINAMICA -->

el contenido que aparece entre las etiquetas <!-- SUSTITUCION DINAMICA --> sera el contenido html reiterado.

el primer paso para lograr esto es una funcion que incluye una expresion regular

Código:
$regex = "/<!-- SUSTITUCION DINAMICA -->(.|\n){1,}<!-- SUSTITUCION DINAMICA --> /";
preg_match($regex, $plantilla, $matches); # $matches se define al vuelo
$match = $matches[0];
ahora las dudas

1) la exprecion regular (.|\n){1,} = encontrar un punto (.) o un salto de linea (\n) una vez o mas ({1,}). ¿Es eso o estoy en un error?

2) que es lo que realmente hace este trozo de codigo ?
Código:
$regex = "/<!-- SUSTITUCION DINAMICA -->(.|\n){1,}<!-- SUSTITUCION DINAMICA --> /";
preg_match($regex, $plantilla, $matches); # $matches se define al vuelo
$match = $matches[0];

bueno espero obtener ayuda para lograr comprender esto, ya que no lo logro.

saludos
  #2 (permalink)  
Antiguo 04/01/2013, 14:44
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 12 años, 9 meses
Puntos: 793
Respuesta: sustitucion dinamica en HTML de bucles PHP

El punto en una expresión regular significa cualquier carácter, excepto nueva linea.

Puede que este aporte te ayude:

http://www.forosdelweb.com/f18/aport...s-pcre-646110/

Saludos.
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP
  #3 (permalink)  
Antiguo 04/01/2013, 14:51
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: sustitucion dinamica en HTML de bucles PHP

Aparte de la aclaración de andresdzphp sobre el punto, agrego:

Cuando ejecutas preg_match() asignas el resultado a $matches, que es un arreglo donde el primer elemento contiene el texto especificado por la expresión regular, en este caso:

Código HTML:
Ver original
  1. <tr>
  2.      <td> [INDICADOR DE SUSTITUCION] </td>
  3. </tr>

Ahora, supongo que en ese código hay un ciclo (while, for, etc.) para aplicar reemplazos en [INDICADOR DE SUSTITUCION] valiéndose de otra expresión regular (una o más).
__________________
- León, Guanajuato
- GV-Foto
  #4 (permalink)  
Antiguo 04/01/2013, 14:52
 
Fecha de Ingreso: agosto-2007
Ubicación: Santiago de Chile
Mensajes: 67
Antigüedad: 16 años, 8 meses
Puntos: 1
Respuesta: sustitucion dinamica en HTML de bucles PHP

entonces significa que retornará todo lo que se encuentra entre <!-- SUSTITUCION DINAMICA --> ... <!-- SUSTITUCION DINAMICA -->

???
  #5 (permalink)  
Antiguo 04/01/2013, 14:54
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: sustitucion dinamica en HTML de bucles PHP

Eso mismo.
__________________
- León, Guanajuato
- GV-Foto
  #6 (permalink)  
Antiguo 04/01/2013, 14:54
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 12 años, 9 meses
Puntos: 793
Respuesta: sustitucion dinamica en HTML de bucles PHP

Exacto, para realizar una sustitución necesitas usar la función preg_replace, con su expresión regular.

Cita:
preg_replace — Realiza una búsqueda y sustitución de una expresión regular
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP
  #7 (permalink)  
Antiguo 04/01/2013, 14:55
 
Fecha de Ingreso: agosto-2007
Ubicación: Santiago de Chile
Mensajes: 67
Antigüedad: 16 años, 8 meses
Puntos: 1
Respuesta: sustitucion dinamica en HTML de bucles PHP

Si, contiene un foreach que realiza los cambios :)
ya voy entendiendo :D

la expresion regular captura todo el codigo HTML para luego a traves del foreach reemplazar el contenido en cada expresion dinamica... algo asi no ?

Etiquetas: bucles, dinamica, 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 17:32.