Ver Mensaje Individual
  #4 (permalink)  
Antiguo 08/09/2012, 18:11
Avatar de ramiro_md
ramiro_md
 
Fecha de Ingreso: septiembre-2008
Mensajes: 274
Antigüedad: 16 años, 3 meses
Puntos: 26
Respuesta: Eficiencia de estos códigos

Gracias por las respuestas, paso a explicar:

Cita:
Iniciado por truman_truman Ver Mensaje
Yo pienso que lo mejor es ejecutar la query con JOIN así solo se hace la consulta una vez , porque de el modo en el que está planteado actualmente se llama a una consulta por cada pasada del ciclo for, cuando con JOIN solo se haría una sola consulta a la base de datos agilizando en gran medida el rendimiento del script.
Existe una única consulta, y se hace al ejecutar el script que hace uso de estas clases. Estas clases no funcionan como un ORM, ni nada por el estilo. Solo tratan de manejar los datos de forma que pueda sacar el informe solicitado sin tener angustiosos y horribles loops anidados je.

Como dice SetheR, el array ya esta cargado.

Por otro lado:

Cita:
Iniciado por SetheR Ver Mensaje
En el primer foreach, creo que no debes poner el "else" y menos con un break, ya que éste acaba la ejecución del foreach, y dejaría fuera del array a los alumnos de ese grado que estuviesen listados después del que estás tratando.
El arreglo ya está ordenado por cursos, porque así viene de la BD. Entonces, para el primer curso que no cumpla debería detenerse el foreach. De ahí el "else" y el "break".

Gracias por pasar por mi post. Cualquier crítica es bienvenida.
Saludos.