PHP por default primero ejecutará el script y posteriormente --al finalizar-- mostrará el resultado. Tu puedes forzar a que te vaya mostrando lo generado conforme va ejecutandose el script para ello ocupas las Funciones de control de salida.
En concreto pon a el inicio de tu script
ob_start() y a el final del mismo
ob_end_flush().