php ha una opzione che puoi configurare nel php.ini che si chiama "output_buffering". Attivandola, quando invii un output php non lo invierà immediatamente al web server, per cui anche inviando un `header` successivamente non causerà un errore. Considera questa soluzione come un workaround, visto che il corretto funzionamento del tuo script dipende da come è stato configurato l'ambiente in cui fai girare il tuo sito.