Start · Sprachen · PHP · Referenz · fdf_remove_item

fdf_remove_item

Funktion

Entfernt einen Eintrag aus einem Listenfeld-Feld in einem FDF-Dokument.

seit PHP 4.3.0 Kategorie: io

Signatur

fdf_remove_item(resource $fdf_document, string $fieldname, int $item): bool

Beschreibung

fdf_remove_item() entfernt einen bestimmten Eintrag (identifiziert durch seinen Index item) aus einem Listenfeld oder Kombinationsfeld innerhalb eines FDF-Dokuments (Forms Data Format). FDF ist ein von Adobe entwickeltes Format zum Austausch von Formulardaten mit PDF-Dokumenten.

Diese Funktion ist nützlich, wenn Formularfelder dynamisch aufgebaut oder bereinigt werden sollen, bevor die FDF-Daten an einen Client oder ein PDF-Formular übermittelt werden. Der Eintrag wird anhand seiner nullbasierten Position im Feld-Array identifiziert.

Die FDF-Erweiterung ist in modernen PHP-Versionen (ab PHP 7.0) nicht mehr standardmäßig verfügbar und gilt als veraltet. Sie setzt die Installation der proprietären Adobe FDF Toolkit-Bibliothek voraus. Für neue Projekte sollten alternative PDF-Bibliotheken wie FPDF, TCPDF oder mPDF in Betracht gezogen werden.

Parameter

Name Typ Default Beschreibung
$fdf_document Pflicht resource Eine gültige FDF-Dokument-Ressource, wie sie von fdf_create() oder fdf_open() zurückgegeben wird.
$fieldname Pflicht string Der Name des Formularfelds (Listenfeld oder Kombinationsfeld), aus dem der Eintrag entfernt werden soll.
$item Pflicht int Der nullbasierte Index des zu entfernenden Eintrags innerhalb des angegebenen Formularfelds.

Rückgabewert

Typ
bool
Beschreibung
Gibt true bei Erfolg zurück, false bei einem Fehler (z. B. ungültiger Feldname oder Index außerhalb des gültigen Bereichs).

Beispiele

Eintrag aus einem Listenfeld entfernen

<?php
// FDF-Dokument öffnen
$fdf = fdf_open('formular.fdf');

if ($fdf) {
    // Den ersten Eintrag (Index 0) aus dem Feld 'Farbe' entfernen
    $result = fdf_remove_item($fdf, 'Farbe', 0);

    if ($result) {
        echo "Eintrag erfolgreich entfernt.";
    } else {
        echo "Fehler beim Entfernen des Eintrags.";
    }

    // FDF-Dokument speichern und schließen
    fdf_save($fdf, 'formular_aktualisiert.fdf');
    fdf_close($fdf);
} else {
    echo "FDF-Dokument konnte nicht geöffnet werden.";
}
?>
Eintrag erfolgreich entfernt.

FDF-Dokument neu erstellen und Einträge verwalten

<?php
// Neues FDF-Dokument erstellen
$fdf = fdf_create();

// Einträge zu einem Listenfeld hinzufügen
fdf_set_opt($fdf, 'Produkt', 0, 'Option1', 'Option 1');
fdf_set_opt($fdf, 'Produkt', 1, 'Option2', 'Option 2');
fdf_set_opt($fdf, 'Produkt', 2, 'Option3', 'Option 3');

// Den zweiten Eintrag (Index 1) entfernen
$removed = fdf_remove_item($fdf, 'Produkt', 1);

if ($removed) {
    echo "Option 2 wurde aus dem Listenfeld 'Produkt' entfernt.";
}

fdf_save($fdf, 'produkte.fdf');
fdf_close($fdf);
?>
Option 2 wurde aus dem Listenfeld 'Produkt' entfernt.

// Wichtig · Fallstricke

Veraltet: Die FDF-Erweiterung (ext/fdf) wurde in PHP 5.3 als veraltet markiert und in PHP 7.0 vollständig entfernt. Sie steht in modernen PHP-Installationen nicht mehr zur Verfügung.

Die korrekte Beschreibung laut offizieller PHP-Dokumentation ist möglicherweise unvollständig oder inkonsistent, da die Erweiterung kaum gepflegt wurde. Die genaue Implementierung hängt stark von der installierten Version des Adobe FDF Toolkits ab.

Für aktuelle Projekte mit PDF-Formularen empfiehlt sich die Verwendung von Bibliotheken wie TCPDF oder FPDF, die keine externen proprietären Abhängigkeiten benötigen.