Я делаю:
header('Content-type: application/pdf'); header('Content-Disposition: inline; filename="the.pdf"'); header('Content-Length: ' . filesize($file)); @readfile($file);
и он отлично работает. PDF открывается в браузере.
Могу ли я сделать if-then-else раньше? Я попробовал, и я получаю сырой PDF-файл
%PDF-1.2 9 0 obj << /Type/Font /Subtype/Type1 /Name/F1 /FontDescriptor 8 0
Почему if-then-else меняет заголовки?
Благодарю.
Было бы полезно, если бы вы разместили именно ваш код if-then-else. Я предполагаю, что у вас есть некоторый пробельный вывод до вывода заголовков.
Убедитесь, что код в блоке if-then-else не вызывает ничего вывода на страницу.
Как только что-то будет выведено, вызовы header()
больше не будут работать.