Signatur
Beschreibung
fdf_create() legt ein neues, leeres FDF-Dokument (Forms Data Format) im Speicher an. FDF ist ein von Adobe entwickeltes Format zum Austausch von Formulardaten aus PDF-Dateien, ohne das gesamte PDF-Dokument übertragen zu müssen.
Die zurückgegebene Ressource wird anschließend mit Funktionen wie fdf_set_value() befüllt und schließlich mit fdf_save() oder fdf_save_string() in eine Datei oder einen String geschrieben. Abschließend sollte die Ressource mit fdf_close() freigegeben werden.
Ein typischer Anwendungsfall ist das serverseitige Vorausfüllen von PDF-Formularen: Der Server erzeugt ein FDF-Dokument mit den gewünschten Feldwerten und sendet es an den Browser, der es an das zugehörige PDF weitergibt. Dafür muss der Content-Type application/vnd.fdf gesetzt werden.
Hinweis: Die FDF-Erweiterung (ext/fdf) ist seit PHP 5.3.0 als veraltet markiert und wurde in PHP 7.0.0 vollständig entfernt. Für moderne Projekte sollten Alternativen wie die FPDF- oder TCPDF-Bibliothek verwendet werden.
Rückgabewert
fdf_*-Funktionen verwendet werden kann, oder false bei einem Fehler.Beispiele
PDF-Formularfelder serverseitig vorausfüllen
<?php
// FDF-Dokument erzeugen
$fdf = fdf_create();
// Feldwerte setzen
fdf_set_value($fdf, 'Vorname', 'Max', 0);
fdf_set_value($fdf, 'Nachname', 'Mustermann', 0);
fdf_set_value($fdf, 'Email', 'max@beispiel.de', 0);
// Zugehöriges PDF-Formular referenzieren
fdf_set_file($fdf, 'http://example.com/formulare/anmeldung.pdf');
// Korrekten Content-Type senden
header('Content-Type: application/vnd.fdf');
// FDF-Dokument ausgeben
fdf_save($fdf);
// Ressource freigeben
fdf_close($fdf);
?>
FDF-Inhalt als String erzeugen und speichern
<?php
// FDF-Dokument erzeugen
$fdf = fdf_create();
fdf_set_value($fdf, 'Bestellnummer', '12345', 0);
fdf_set_value($fdf, 'Betrag', '99.90', 0);
// FDF in einen String schreiben
$fdfString = fdf_save_string($fdf);
fdf_close($fdf);
// String in Datei speichern
file_put_contents('/tmp/bestellung_12345.fdf', $fdfString);
echo 'FDF-Datei wurde erfolgreich erstellt. Länge: ' . strlen($fdfString) . ' Bytes';
?>
// Wichtig · Fallstricke
Veraltet und entfernt: Die FDF-Erweiterung wurde in PHP 5.3.0 als deprecated markiert und in PHP 7.0.0 vollständig aus dem Kern entfernt. Code, der fdf_create() verwendet, ist auf modernen PHP-Versionen nicht lauffähig.
Als Alternativen empfehlen sich FPDF, TCPDF, mPDF oder die pdftk-Kommandozeilenwerkzeuge zum Befüllen von PDF-Formularen.
Stellen Sie sicher, dass nach jedem fdf_create()-Aufruf am Ende immer fdf_close() aufgerufen wird, um Speicherlecks zu vermeiden.