Мы должны забыть о малой эффективности, скажем, в 97% случаев: преждевременная оптимизация - корень всех зол.
Тест ob_start
и друзей, чтобы увидеть, если разница в производительности имеет значение. Если это так, ищите альтернативы.
Самый простой вариант - переместить вызов header()
перед печатью.
Поскольку вы, вероятно, выполняете перенаправление с чем-то вроде:
header('Location: /new/location/');
Вы не должны ничего печатать перед этим вызовом header()
, потому что клиент ничего не будет делать с данными, которые вы напечатали в любом случае (если только что-то не хватает в HTTP).
(Javascript не является хорошим вариантом для перенаправлений, и при этом meta
не обновляет, если вы по какой-то причине не хотите обнаруживать Javascript.)