Foros del Web » Programando para Internet » PHP » CodeIgniter »

Rendimiento y optimización de codeigniter

Estas en el tema de Rendimiento y optimización de codeigniter en el foro de CodeIgniter en Foros del Web. Hola a todos: Quisiera saber cual de estas 2 formas es mas eficiente en Codeigniter. En la opción 1 el array data se pasa a ...
  #1 (permalink)  
Antiguo 21/01/2013, 19:05
Avatar de truman_truman  
Fecha de Ingreso: febrero-2010
Ubicación: /home/user
Mensajes: 1.341
Antigüedad: 14 años, 2 meses
Puntos: 177
Rendimiento y optimización de codeigniter

Hola a todos:
Quisiera saber cual de estas 2 formas es mas eficiente en Codeigniter.
En la opción 1 el array data se pasa a todas las vista.
En la opción 2 cada array data tiene un nombre distinto haciendo que no se pase toda la info
a cada vista.
Yo quiero suponer que la opción 2 es la correcta, osea renombrar cada array, para no pasar
información innecesaria a cada vista.
Estoy en lo correcto? o a Codeigniter no le importa eso?
Gracias por leer el post
Saludos






OPCIÓN 1

Código PHP:
 public function alguna_funcion(){
        
        
        
$data['datos1'] = $this->modelo->function1();
        
$data['widget1'] = $this->load->view('widget1',$data,TRUE);
        
$data['datos2'] = $this->modelo->function2();
        
$data['widget2'] = $this->load->view('widget2',$data,TRUE);
        
$data['datos3'] = $this->modelo->function3();
        
$data['widget3'] = $this->load->view('widget3',$data,TRUE);
        
$data['datos4'] = $this->modelo->function4();
        
$data['widget4'] = $this->load->view('widget4',$data,TRUE);
        
        
$this->load->view('home_view',$data);
        
        
    } 
OPCIÓN 2
Código PHP:
 public function alguna_funcion(){
     
        
        
$data1['datos1'] = $this->modelo->function1();
        
$data['widget1'] = $this->load->view('widget1',$data1,TRUE);
        
$data2['datos2'] = $this->modelo->function2();
        
$data['widget2'] = $this->load->view('widget2',$data2,TRUE);
        
$data3['datos3'] = $this->modelo->function3();
        
$data['widget3'] = $this->load->view('widget3',$data3,TRUE);
        
$data4['datos4'] = $this->modelo->function4();
        
$data['widget4'] = $this->load->view('widget4',$data4,TRUE);
        
        
$this->load->view('home_view',$data);
        
        
    } 
__________________
la la la
  #2 (permalink)  
Antiguo 03/02/2013, 23:59
 
Fecha de Ingreso: febrero-2013
Mensajes: 33
Antigüedad: 11 años, 2 meses
Puntos: 2
Respuesta: Rendimiento y optimización de codeigniter

Creo que la forma uno esta bien hecha, para cargar por ejemplo el widget dos debes insertar en tu vista "<?php echo $widget2; ?>"
No te aseguro porque no soy experto pero segun la guia que estoy siguiendo tengo esto:
Código PHP:
Ver original
  1. $datos_plantilla["cuerpo"] = $this->load->view('cuerpo_articulos', $arrayArticulo, true);
  2.     $datos_plantilla["titulo"] = $arrayArticulo["titulo"];
  3.    
  4.     $this->load->view('plantilla_articulo', $datos_plantilla);

Y cuando en mi vista pongo $titulo solo se muestra el titulo, y cuando pongo $cuerpo se muestra lo que carga $datos_plantilla['cuerpo'].

Espero que te sea de ayuda.
Saludos.
  #3 (permalink)  
Antiguo 04/02/2013, 15:19
Avatar de truman_truman  
Fecha de Ingreso: febrero-2010
Ubicación: /home/user
Mensajes: 1.341
Antigüedad: 14 años, 2 meses
Puntos: 177
Respuesta: Rendimiento y optimización de codeigniter

Yo me refiero a la cantidad de informacion que viaja en cada vista en el array data, cada vista no esta usando toda esa info sino que solo una parte de ella, eso es en la OPCIÓN 1.
Pero en la opcion 2 solo se pasa la info necesaria que utilizará la vista.
Mi pregunta es, cual de estas 2 opciones retardaría mas la carga de un sitio web? o cual de estas opciones es mas eficiente para el servidor???
__________________
la la la

Etiquetas: data, optimización
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 12:52.