Hier ein vollständiges Beispiel mit allen nötigen Anweisungen und der Angabe der Orte dieser Anweisungen:
PHP-Code:
<?php
// lokaler Dateisystempfad zur PDF-Datei
$file = '/pfad/zur/pdf-datei';
// Dateiname, mit der die Ressource ausgeliefert werden soll
$filename = 'Dateiname.pdf';
// Hilfsfunktion zum Kodieren des filename-Attributwerts (siehe RFC 2822)
function rfc2822_quoteString($string)
{
return preg_replace('/[^\x01-\x08\x0B\x0C\x0E-\x1F\x21\x23-\x5B\x5D-\x7F]/', '\\\\$0', $string);
}
// Inhaltstypen bestimmen
header('Content-Type: application/pdf');
// Inhalts-Disposition (inline/attachment)
header('Content-Disposition: inline;filename="'. rfc2822_quoteString($filename).'"');
// Dateiinhalt wird gelesen und ausgegeben
readfile($file);
// Skript wird explizit beendet, damit keine zusätzlichen Ausgaben die Daten korrumpieren
exit;
Die Werte für
$file und
$filename kannst du natürlich auch dem Skript übergeben beziehungsweise aus einer zusätzlichen Quelle (etwa Datenbank) beziehen.