Ver Mensaje Individual
  #5 (permalink)  
Antiguo 22/03/2014, 15:20
Avatar de NSD
NSD
Colaborador
 
Fecha de Ingreso: mayo-2012
Ubicación: Somewhere
Mensajes: 1.332
Antigüedad: 12 años, 6 meses
Puntos: 320
Respuesta: Mejorar carga de foreach

no hay mucho para cambiarle a ese codigo, lo que puedes hacer es paginar los dos foreach interiores.

lo que yo haria es un banchmark a ese codigo para ver donde esta el cuello de botella real. en modo local el webGrind es muy util ya que te identificara con precicion el codigo que mas demora, sino puedes optar por una clase asi (o una mas sofisticada):
Código PHP:
Ver original
  1. <?php
  2.     class simpleBench
  3.     {
  4.         private $tiempos = array();
  5.        
  6.         public function initPoint($nombre)
  7.         {
  8.             $this->tiempos[$nombre] = microtime(true);
  9.         }
  10.        
  11.         public function endPoint($nombre)
  12.         {
  13.             $this->tiempos[$nombre] = microtime(true)-$this->tiempos[$nombre];
  14.         }
  15.        
  16.         public function dumpBench($nombre = '')
  17.         {
  18.             var_dump($this->tiempos);
  19.         }
  20.     }
  21.    
  22.     $miBench = new simpleBench();
  23. ?>
para ver que es lo que demora, primero la usas sobre el primer foreach, luego sobre el segundo y luego sobre el tercero.
__________________
Maratón de desafíos PHP Junio - Agosto 2015 en FDW | Reglamento - Desafios