(PECL rar >= 2.0.0)
RarEntry::getStream — Récupère le gestion de fichier pour une entrée
Retourne le gestionnaire de fichier qui supporte les opérations de lecture. Ce gestionnaire permet la décompression à la volée de l'entrée.
Le gestionnaire ne sera pas touché par l'appel à la fonction rar_close().
Le flux résultant ne permet pas de vérifier l'intégrité des données. Par exemple, un fichier corrompu ou crypté avec une clé fausse ne sera pas détecté. Ce sera de la responsabilité du développeur d'utiliser le CRC de l'entrée pour vérifier son intégrité, s'il le souhaite.
passwordfalse. Vous pouvez vérifier si l'entrée
est cryptée en utilisant la méthode RarEntry::isEncrypted().
Le gestionnaire de fichier, ou false si une erreur survient.
| Version | Description |
|---|---|
| PECL rar 3.0.0 | Support des archives RAR dont les entrées portent le même nom. |
Exemple #1 Exemple avec RarEntry::getStream()
<?php
$rar_file = rar_open('example.rar');
if ($rar_file === false)
die("Échec lors de l'ouverture de l'archive Rar");
$entry = rar_entry_get($rar_file, 'Dir/file.txt');
if ($entry === false)
die("Impossible de trouver l'entrée demandée");
$stream = $entry->getStream();
if ($stream === false)
die("Échec lors de la récupération du flux.");
rar_close($rar_file); //le flux est indépendant du fichier
while (!feof($stream)) {
$buff = fread($stream, 8192);
if ($buff !== false)
echo $buff;
else
break; //erreur fread
}
fclose($stream);
?>rar://