Foros del Web » Programando para Internet » PHP »

Meter dos o más "lineas de código" en una variable

Estas en el tema de Meter dos o más "lineas de código" en una variable en el foro de PHP en Foros del Web. Buenas gente, twengo un problema necesito insertar codigo html en una variable, así que necesitaría hacer algo así (lo tengo hecho en asp pero nos ...
  #1 (permalink)  
Antiguo 05/01/2006, 10:59
Avatar de renton  
Fecha de Ingreso: enero-2004
Ubicación: BCN (PPCC)
Mensajes: 573
Antigüedad: 13 años, 10 meses
Puntos: 1
Meter dos o más "lineas de código" en una variable

Buenas gente, twengo un problema
necesito insertar codigo html en una variable, así que necesitaría hacer algo así (lo tengo hecho en asp pero nos e como pasarlo a php):

Código:
sMenuStr = 	                "		<td valign=""middle"" class=""regText bold small"">" & vbcrlf & _

                             	"			<a href=""" & i_sLink & """  > el  link</a>" & vbcrlf & _

                             	"		</td>"
Alguna idea?
Muchisimas gracias!
__________________
"No et limites a contemplar aquestes hores que ara venen, baixa al carrer i participa.
No podran res davant un poble unit, alegre i combatiu!!"
  #2 (permalink)  
Antiguo 05/01/2006, 11:08
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Puedes usar sintax tipo "Here doc" .. sería lo más limpio para que "pegues" tu HTML generado por otro lado (tal vez un editor HTML visual? tipo Dreamwevaer?) y .. hasta puedas llamar a variables en esa misma variable. Todo esto sin tener que /escapar ninguna variable ni nada de especial.

Código PHP:
$html=<<<HTML
Aquí tu HTML tal cual ...$variables si necistas .. sin echo ni nda.
HTML; 
http://www.php.net/manual/en/languag...syntax.heredoc

Un saludo,
  #3 (permalink)  
Antiguo 05/01/2006, 11:29
Avatar de renton  
Fecha de Ingreso: enero-2004
Ubicación: BCN (PPCC)
Mensajes: 573
Antigüedad: 13 años, 10 meses
Puntos: 1
Variables si q las pilla, pero funciones enmedio noOoOOO

Ej:

Cita:
$html=<<<HTML
<td bgcolor="#FFFFFF"> blankImage(3, 1, " ") </td>
HTML;
__________________
"No et limites a contemplar aquestes hores que ara venen, baixa al carrer i participa.
No podran res davant un poble unit, alegre i combatiu!!"
  #4 (permalink)  
Antiguo 05/01/2006, 11:34
Avatar de renton  
Fecha de Ingreso: enero-2004
Ubicación: BCN (PPCC)
Mensajes: 573
Antigüedad: 13 años, 10 meses
Puntos: 1
De hecho me da igual, creo que ire a lo guarro y hare rollo:
Cita:
$var="<td>blablablablablablabla</td>";
$var=$var."<td>blobloblo</td>";
...
...
La putada esq así, si haces un ver codigo fuente en el explorador, sale TODO en una misma línea.
Cómo lo podría arreglar?

Graciasss!
__________________
"No et limites a contemplar aquestes hores que ara venen, baixa al carrer i participa.
No podran res davant un poble unit, alegre i combatiu!!"
  #5 (permalink)  
Antiguo 05/01/2006, 11:35
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Así es .. funciones NO.

Pero para eso puedes hacer cosas como:
Código PHP:
$nose=blankImage(31" "); 
Y luego usar $nose donde corresponda:

Código PHP:
$html=<<<HTML 
<td bgcolor="#FFFFFF">$nose</td>
HTML
Un saludo,
  #6 (permalink)  
Antiguo 05/01/2006, 11:37
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Otra forma más avanzada de hacer lo que pretendes:

http://www.forosdelweb.com/showpost....&postcount=151

Es un motor de "plantillas" básico .. donde podrás tener completamente separado el código PHP del HTML.

Un saludo,
  #7 (permalink)  
Antiguo 05/01/2006, 11:40
Avatar de renton  
Fecha de Ingreso: enero-2004
Ubicación: BCN (PPCC)
Mensajes: 573
Antigüedad: 13 años, 10 meses
Puntos: 1
Ok voy a probar.
Gracias cluster!

PD: Si alguna vez el jefe os pide que migréis una web en ASP (desarrollada en Israel) a PHP, corred CORRED!!!
__________________
"No et limites a contemplar aquestes hores que ara venen, baixa al carrer i participa.
No podran res davant un poble unit, alegre i combatiu!!"
  #8 (permalink)  
Antiguo 05/01/2006, 12:26
Avatar de kalolo  
Fecha de Ingreso: abril-2005
Mensajes: 65
Antigüedad: 12 años, 7 meses
Puntos: 0
Cita:
Iniciado por renton
De hecho me da igual, creo que ire a lo guarro y hare rollo:

La putada esq así, si haces un ver codigo fuente en el explorador, sale TODO en una misma línea.
Cómo lo podría arreglar?

Graciasss!

mmm.. puedes intetnar:
Código PHP:
$html ='<td>blablablablablablabla</td>';
$html .='<td>blobloblo</td>';

echo 
nl2br($hml); 
__________________
There is no place like 127.0.0.1

Última edición por kalolo; 05/01/2006 a las 13:54
  #9 (permalink)  
Antiguo 05/01/2006, 13:44
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Cita:
Iniciado por renton
De hecho me da igual, creo que ire a lo guarro y hare rollo:

La putada esq así, si haces un ver codigo fuente en el explorador, sale TODO en una misma línea.
Cómo lo podría arreglar?

Graciasss!
Si vas hacerlo así .. por lo menos indica el salto de línea al final de las mismas: (código de escape \n)

Código PHP:
$var  "<td>blablablablablablabla</td>\n";
$var .= "<td>blobloblo</td>\n"
Pero .. eso realmente es complicarse la vida al extremo ... Usa la sintax Here Doc .. NO es necesario que en una definición de una $variable con sintax here doc esté todo .. igualmente puedes ir concatenando como lo haces en este ejemplo ...

Un saludo,
  #10 (permalink)  
Antiguo 05/01/2006, 14:18
 
Fecha de Ingreso: noviembre-2005
Mensajes: 69
Antigüedad: 12 años, 1 mes
Puntos: 1
si deseas mesclar codigo html con php aqui te envio un ejemplito que me fue muy util:

Cita:
<?php
if ($expression) {
?>
<strong>This is true.</strong>
<?php
} else {
?>
<strong>This is false.</strong>
<?php
}
?>
  #11 (permalink)  
Antiguo 05/01/2006, 14:32
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
El detalle está que requiere todo eso en una $variable.

Igualmente no es problema esto .. se pueden usar las funciones de tratamiento del buffer de salida de PHP:

ob_start() .. ob_get_contents() y afines ...

Para, capturar desde el principio del código "HTML" que estamos generando hasta el final .. (y descartando si corresponde la salida de esto al cliente (navegador)).

Un saludo,
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 01:04.