W3docs

zip_entry_name()

Die Funktion zip_entry_name() ist eine veraltete PHP-Funktion, um den Namen einer Datei in einem ZIP-Archiv abzurufen.

Die Funktion zip_entry_name() ist eine veraltete PHP-Funktion, die den Namen einer Datei in einem ZIP-Archiv zurückgibt. Der zurückgegebene Name ist der Pfad der Datei relativ zum Stammverzeichnis des ZIP-Archivs.

Kompatibilitätshinweis: Die veralteten prozeduralen zip_*-Funktionen wurden in PHP 7.4 als veraltet markiert und in PHP 8.0 entfernt. Dieses Tutorial behandelt die veraltete Syntax als historische Referenz. Für moderne PHP-Anwendungen sollte die Klasse ZipArchive verwendet werden, die ab PHP 8.0+ die einzige praktikable Option darstellt.

Syntax

Die Syntax der Funktion zip_entry_name() lautet wie folgt:

Syntax der Funktion zip_entry_name() in PHP

string zip_entry_name(resource $zip_entry)

Dabei ist $zip_entry ein von zip_read() zurückgegebenes Ressource-Handle für einen Eintrag im ZIP-Archiv.

Verwendungsbeispiele

Sehen wir uns ein praktisches Beispiel für das Abrufen eines Dateinamens aus einem ZIP-Archiv an.

Beispiel: Veraltete Verwendung (PHP 7.4 und früher)

Das folgende Beispiel zeigt, wie ein ZIP-Archiv geöffnet, seine Einträge durchlaufen und der Name jedes Eintrags mit den veralteten zip_*-Funktionen abgerufen wird:

Dateinamen aus einem ZIP-Archiv in Legacy-PHP abrufen

$zip = zip_open('example.zip');
if ($zip) {
    while ($zip_entry = zip_read($zip)) {
        echo zip_entry_name($zip_entry) . "\n";
        zip_entry_close($zip_entry);
    }
    zip_close($zip);
}

Dieser Code öffnet example.zip, liest jeden Eintrag nacheinander, gibt seinen Namen mit zip_entry_name() aus und schließt sowohl den Eintrag als auch das Archiv ordnungsgemäß.

Beispiel: Namen einer Datei in einem ZIP-Archiv abrufen (modernes PHP)

Da die veralteten zip_*-Funktionen in PHP 8.0+ entfernt wurden, ist der empfohlene Ansatz die Verwendung der Klasse ZipArchive. Dieses Beispiel zeigt, wie ein Archiv geöffnet, der erste Eintrag gelesen und dessen Name mit ordnungsgemäßer Fehlerbehandlung und Ressourcenbereinigung abgerufen wird:

Namen einer Datei in einem ZIP-Archiv in PHP abrufen

$zip = new ZipArchive();
$zipFile = 'example.zip';

if ($zip->open($zipFile) === true) {
    // Get the name of the first entry
    $fileName = $zip->getNameIndex(0);
    echo "The name of the file is: " . $fileName;
    $zip->close();
} else {
    echo "Failed to open the archive.";
}

Dieser Code erstellt eine ZipArchive-Instanz und öffnet example.zip. Er ruft den Namen des ersten Eintrags mit getNameIndex(0) ab, gibt ihn aus und schließt das Archiv ordnungsgemäß. Wenn das Archiv nicht geöffnet werden kann, wird eine Fehlermeldung angezeigt.

Fazit

In diesem Artikel haben wir die Funktion zip_entry_name() und ihre Rolle beim Abrufen von Dateinamen aus ZIP-Archiven besprochen. Wir haben ihre Syntax erläutert und sowohl veraltete als auch moderne Beispiele bereitgestellt. Durch die Verwendung von ZipArchive in Ihren Anwendungen können Sie ZIP-Archive zuverlässig verwalten und auf Dateimetadaten zugreifen.

Verwandte Funktionen

Die veralteten zip_*-Funktionen werden beim Iterieren über ein ZIP-Archiv typischerweise gemeinsam verwendet. Die folgenden Kapitel behandeln den Rest des Arbeitsablaufs:

Für moderne, unterstützte ZIP-Verarbeitung siehe die PHP Zip-Erweiterungsübersicht.

Übung

Übung
Was macht die Funktion zip_entry_name() in PHP?
Was macht die Funktion zip_entry_name() in PHP?
Was this page helpful?