Zum Inhalt springen

zip_entry_name()

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

Hinweis zur Kompatibilität: 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 zu historischen Referenzzwecken. Für moderne PHP-Anwendungen verwenden Sie die Klasse ZipArchive, die in PHP 8.0+ die einzige praktikable Option ist.

Syntax

Die Syntax der Funktion zip_entry_name() lautet wie folgt:

Syntax der Funktion zip_entry_name() in PHP

php
string zip_entry_name(resource $zip_entry)

Dabei ist $zip_entry ein Ressourcen-Handle, das von zip_read() für einen Eintrag im ZIP-Archiv zurückgegeben wird.

Anwendungsbeispiele

Betrachten wir ein praktisches Beispiel zum Abrufen eines Dateinamens aus einem ZIP-Archiv.

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

Das folgende Beispiel zeigt, wie man ein ZIP-Archiv öffnet, durch seine Einträge iteriert und den Namen jedes Eintrags mit den veralteten zip_*-Funktionen abruft:

Abrufen von Dateinamen aus einem ZIP-Archiv in veraltetem PHP

php
$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 sequenziell ein, gibt seinen Namen mit zip_entry_name() aus und schließt sowohl den Eintrag als auch das Archiv ordnungsgemäß.

Beispiel: Abrufen des Namens einer Datei in einem ZIP-Archiv (Modernes PHP)

Da die veralteten zip_*-Funktionen in PHP 8.0+ entfernt wurden, wird die Verwendung der Klasse ZipArchive empfohlen. Dieses Beispiel zeigt, wie man ein Archiv öffnet, den ersten Eintrag liest und dessen Namen mit ordnungsgemäßer Fehlerbehandlung und Ressourcenbereinigung abruft:

Abrufen des Namens einer Datei in einem ZIP-Archiv in PHP

php
$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 die Syntax erläutert und sowohl Beispiele für die veraltete als auch für die moderne Verwendung bereitgestellt. Durch die Verwendung von ZipArchive in Ihren Anwendungen können Sie ZIP-Archive zuverlässig verwalten und auf Dateimetadaten zugreifen.

Praxis

Was macht die zip_entry_name()-Funktion in PHP?

Finden Sie das nützlich?

Dual-run-Vorschau — vergleichen Sie mit den Symfony-Routen live.