Foros del Web » Programando para Internet » PHP »

Que es mas eficiente?

Estas en el tema de Que es mas eficiente? en el foro de PHP en Foros del Web. Ir imprimiendo "echo" o ir guardando y concatenando en variable y al final de ciclo imprimirlo?. ejemplo: Código PHP: ... ... echo '<table width="100%"  border="1" cellspacing="2" cellpadding="0">' ; while( ...
  #1 (permalink)  
Antiguo 12/01/2006, 12:48
Avatar de kalolo  
Fecha de Ingreso: abril-2005
Mensajes: 65
Antigüedad: 19 años
Puntos: 0
Que es mas eficiente?

Ir imprimiendo "echo" o ir guardando y concatenando en variable y al final de ciclo imprimirlo?. ejemplo:
Código PHP:
...
...
echo
'<table width="100%"  border="1" cellspacing="2" cellpadding="0">';
while(
$Rows=mysql_fetch_array($Query_Seleccionar))
       {
                  for(
$x=0;$x<35;$x++)
              {
                echo <
td>$Rows[$x]</tr>;
              }  

           } 
Algo asi, donde vas imprimiendo conforme va pasando el ciclo, echo <td>asdf</td>, vaya armando la tabla en html. o lo que sea que estes armando en el ciclo.... ó
Código PHP:
...
...
$html.='<table width="100%"  border="1" cellspacing="2" cellpadding="0">';
while(
$Rows=mysql_fetch_array($Query_Seleccionar))
       {
                  for(
$x=0;$x<35;$x++)
              {
                
$html.='<td>'.$Rows[$x].'</tr>';
              }  

           }
echo 
$html
Que es mejor?,.., yo aveces uso uno .. aveces uso otro, no he tenido un caso concreto donde tenga que acudir a uno especifico. Pero si alguien conoce el porque es mejor siempre usar uno de estos caso. me interesaria ver su opinion.

Saludos!
__________________
There is no place like 127.0.0.1
  #2 (permalink)  
Antiguo 12/01/2006, 13:00
Avatar de lado2mx
Colaborador
 
Fecha de Ingreso: agosto-2001
Ubicación: Veracruz
Mensajes: 3.720
Antigüedad: 22 años, 8 meses
Puntos: 9
Mira para esos detalles uso esto:
Código PHP:
?><table width="100%"  border="1" cellspacing="2" cellpadding="0">
<?
while($Rows=mysql_fetch_array($Query_Seleccionar))
       {
                  for(
$x=0;$x<35;$x++)
              {
                
?><td><? echo $Rows[$x]; ?></tr><?
              
}  

           }
  #3 (permalink)  
Antiguo 12/01/2006, 13:02
Avatar de kalolo  
Fecha de Ingreso: abril-2005
Mensajes: 65
Antigüedad: 19 años
Puntos: 0
Cita:
Iniciado por lado2mx
Mira para esos detalles uso esto:
Código PHP:
?><table width="100%"  border="1" cellspacing="2" cellpadding="0">
<?
while($Rows=mysql_fetch_array($Query_Seleccionar))
       {
                  for(
$x=0;$x<35;$x++)
              {
                
?><td><? echo $Rows[$x]; ?></tr><?
              
}  

           }
Si, mmm... se me hace igual que el primer ejemplo, ir imprimiendo conforme va pasando el ciclo.
__________________
There is no place like 127.0.0.1
  #4 (permalink)  
Antiguo 12/01/2006, 13:27
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
A mi me gusta más el 2° ejemplo. Si, consumes más recursos por qué creas una variable ... pero esa filosofía te dará juego por ejemplo para .. imagina que tienes que ese "HTML" que así generas enviarlo por e-mail. Si tu haces "echo" en el bucle al final acabaras creando tu variable "acomulador".

De esa forma (2°) podrías meter eso en una función y llamarlo según tus necesidades tipo:

Código PHP:
function nose(){
// proceso
return $html;
}

// mandarlo al buffer de salida (a tu cliente, navegador .. verlo en tu página generada)
echo nose();

// ó enviarlo por e-mail ...
$cuerpo"Este es su HTML<br>".nose()."<br><b>FIN</b>";
mail($para,$asunto,$cuerpo,$cabeceras); 
Un saludo,
  #5 (permalink)  
Antiguo 12/01/2006, 13:36
Avatar de kalolo  
Fecha de Ingreso: abril-2005
Mensajes: 65
Antigüedad: 19 años
Puntos: 0
Cita:
Iniciado por Cluster
A mi me gusta más el 2° ejemplo. Si, consumes más recursos por qué creas una variable ... pero esa filosofía te dará juego por ejemplo para .. imagina que tienes que ese "HTML" que así generas enviarlo por e-mail. Si tu haces "echo" en el bucle al final acabaras creando tu variable "acomulador".

Ok ok , tienes razon con el hecho de tener facilidad de usarla como funcion, aparte te da facilidad de manejarte con los headers por no presentar "echo"....... fuera de el hecho de poder usar el 2 ejemplo, mi pregunta nacio, si el primer ejemplo te hace consumir mas recursos en el navegador que el segundo, digo a fin de cuentas se te presenta la pagina con la misma cantidad de codigo.

Probe los dos y .. .no veo diferencia alguna, igual el ejemplo es muy basico y los renglones a generar son como 200.... cuando el numero es grande ahi tambien hay que ver el tiempo de vida que apache otorga a la conexion... y regreso a mi pregunta :S ,.., influye en estos aspectos utilizar alguna de las dos formas ?.

saludos!.
__________________
There is no place like 127.0.0.1
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 22:37.