Signatur
Beschreibung
rar_wrapper_cache_stats() liefert interne Statistiken über den Zwischenspeicher (Cache), den die RAR-Extension beim Zugriff über den rar://-URL-Wrapper verwendet. Der Cache speichert bereits geöffnete RAR-Archive, um mehrfaches Öffnen derselben Datei zu vermeiden.
Die Funktion gibt ein assoziatives Array zurück, das die Anzahl der Cache-Treffer (Hits) – wenn ein Archiv bereits im Cache vorhanden war – und der Cache-Fehlschläge (Misses) – wenn das Archiv neu geöffnet werden musste – enthält. Diese Werte sind nützlich, um die Performance beim Arbeiten mit RAR-Archiven über den URL-Wrapper zu analysieren und zu optimieren.
Die Funktion ist besonders hilfreich bei Anwendungen, die viele Dateien aus demselben RAR-Archiv lesen, z. B. beim Extrahieren mehrerer Elemente oder beim Durchsuchen von Archiv-Inhalten. Ein hoher Anteil an Treffern zeigt eine effiziente Nutzung des Caches.
Voraussetzung für die Verwendung ist die installierte und aktivierte PECL-Extension rar.
Rückgabewert
hits (Anzahl der Cache-Treffer) und misses (Anzahl der Cache-Fehlschläge) zurück.Beispiele
Cache-Statistiken nach Zugriff auf RAR-Archiv ausgeben
<?php
// Voraussetzung: PECL-Extension 'rar' ist installiert
// Mehrere Dateien aus demselben Archiv über den URL-Wrapper lesen
$archivPfad = '/pfad/zum/archiv.rar';
$inhalt1 = file_get_contents('rar://' . $archivPfad . '#datei1.txt');
$inhalt2 = file_get_contents('rar://' . $archivPfad . '#datei2.txt');
$inhalt3 = file_get_contents('rar://' . $archivPfad . '#datei3.txt');
// Statistiken abrufen
$stats = rar_wrapper_cache_stats();
echo 'Cache-Treffer: ' . $stats['hits'] . PHP_EOL;
echo 'Cache-Fehlschläge: ' . $stats['misses'] . PHP_EOL;
Cache-Effizienz berechnen
<?php
// Cache-Statistiken auswerten
$stats = rar_wrapper_cache_stats();
$gesamt = $stats['hits'] + $stats['misses'];
if ($gesamt > 0) {
$effizienz = ($stats['hits'] / $gesamt) * 100;
printf("Cache-Effizienz: %.1f%% (%d Treffer von %d Zugriffen)\n",
$effizienz, $stats['hits'], $gesamt);
} else {
echo 'Noch keine Cache-Zugriffe erfasst.' . PHP_EOL;
}
// Wichtig · Fallstricke
Hinweis zur Extension: rar_wrapper_cache_stats() ist Teil der PECL-Extension rar und steht nicht in der PHP-Standardinstallation zur Verfügung. Die Extension muss separat installiert werden (pecl install rar).
Die zurückgegebenen Statistiken sind kumulativ für die gesamte Laufzeit des PHP-Prozesses bzw. der aktuellen Anfrage. Ein Reset der Statistiken ist nicht vorgesehen.
Falls die Funktion aufgerufen wird, ohne dass der URL-Wrapper zuvor genutzt wurde, können die Werte 0 sein.